拆分多个对象只返回一个

时间:2018-01-24 14:27:24

标签: powershell split

我试图从目录中提取多个文件并拆分文件名,并将它们作为变量$c1Output重新加入,但是当我回显该变量时,它只列出其中一个文件。

$outputImages = GCI -Path $c1Output\*.jpg -R
$outputImages = $outputImages.Name
    $a, $b = $outputImages.Split(".")[0..1]
        $outputImages = $a + '.' + $b

如果我在分割之前的任何时候回显变种$outputImages,它仍会列出整个目录,但在分割之后变量只提供其中一个文件。

此外,我在寻址的文件总是被命名为BARCODE.POSITION.PROCESSCLASS.jpg,因此如果有人有更好的方法只选择BARCODE.POSITION,请分享。

1 个答案:

答案 0 :(得分:1)

您的脚本可以制作成一行,Get-ChildItem管道传输到ForEach-Object,它会拆分Name属性,然后汇编并输出分割中的前两项。

$outputImages = Get-ChildItem -Path $c1Output -Include *.jpg -Recurse | ForEach-Object {$a,$b = $_.Name.Split('.')[0..1]; "$a.$b"}