所以我用
$list = Get-ChildItem $path -filter *xml在给定的路径上查找其中的所有xml文件。它似乎会生成一个FileSystemInfo类型对象的数组。
是否有最好的方法以一种可格式化和直观的方式枚举名称?当我开始使用的时候,事情变得非常的不稳定。
$list | ft因为我相信它是把它们当作物体来处理。这是意料之中的。但不是我想要的。
你有什么高水平的指导,我在这里处理什么和最好的方式,在PS去切割它的一个任意的方式-即人类可读的。一个foreach()循环是最好的主意吗?我觉得它会起作用,但并不理想。
发布于 2015-12-30 16:03:55
这听起来真的像是在请求Select-Object,下面是:
选择对象或对象集的指定的属性。
您提到您正在寻找一种人类可读的方法来枚举名称吗?
就像苏打水说的那样,您只需提取一个属性就可以得到一个名称数组
在PowerShell V2.需要小心,因为您将匹配以xml结尾的文件夹。
Get-ChildItem $path -filter *xml | Select-Object -ExpandProperty Name在PowerShell V3+中
(Get-ChildItem $path -Filter *xml -File).Name但那只会让你感到紧张。你打算怎么处理它们?一个简单的预测将是最简单、全面的方法。
(Get-ChildItem $path -Filter *xml -File).Name | ForEach-Object{"The file name is $_"}但是,如果您正在做其他事情,比如移动文件,那么有一些cmdlet可以直接处理Get-ChildItem的输出,而不需要显式循环。
Get-ChildItem $path -Filter *xml -File | Move-File -Destination "C:\temp"这是因为根据属性名匹配参数,移动项目和许多其他cmdlet都可以这样做。
-Path指定项的当前位置的路径。默认的是当前目录。通配符是允许的。 不需要化名?真实位置?1默认值不接受管道输入?真的(ByValue,ByPropertyName)接受通配符吗?错误
https://stackoverflow.com/questions/34532532
复制相似问题