我的文件位于以下目录中:
first-file-name
2nd-file-name
3rd-file-name
.
.
n-file-name
我需要将文件名的每个部分存储在一个单独的变量中,因为我想在表的不同列中插入这些值。
为此,我使用以下脚本获取文件名的每个部分:
$var1=$item.BaseName.Split("-",3)[0]---------first
$var2=$item.BaseName.Split("-",3)[1]---------file
$var3=$item.BaseName.Split("-",3)[2]---------name
并可以将这些值保存在变量中。但问题是如何为所有文件执行此操作,如果我使用foreach循环,则变量值将覆盖 ???
foreach(item in $items)
{
$var1=$item.BaseName.Split("-",3)[0]---------first
$var2=$item.BaseName.Split("-",3)[1]---------file
$var3=$item.BaseName.Split("-",3)[2]---------name
}
此处,在$items
中,我使用get-childitem
获得了文件路径。
答案 0 :(得分:1)
我会创建一个$parts = $items | ForEach-Object {
[PsCustomObject]@{
FirstPart = $item.BaseName.Split("-",3)[0]
SecondPart = $item.BaseName.Split("-",3)[1]
ThirdPart = $item.BaseName.Split("-",3)[2]
}
}
,其中包含三个部分:
$parts
现在$parts[0].FirstPart
是这些对象的数组,因此您可以使用e访问它们。 G。
if(str<10){
System.out.print("\nStr \t"+str+"["+bonusstr+"]");
}else if(str>10){
System.out.print("\nStr \t"+str+"[+"+bonusstr+"]");"