我需要对使用 Powershell 获取的文件列表进行格式化、添加文本。我可以简单地使用以下脚本来获取我的文件列表:
Get-ChildItem("c:\path") | where {$_.Length -eq 0} | select name
这可以很好地返回文件名列表:
文件1.txt
文件2.txt
文件2.txt
我想要做的是将附加文本添加到输出中,使其看起来更像这样:
'文件1.txt',
'文件2.txt',
'文件3.txt',
我发现这比应有的更困难。我试过这个:
$l = Get-ChildItem("c:\path") | where {$_.Length -eq 0} | select name | foreach($_) { "'$_,"}
这并不能完全做到这一点,因为字段名称已添加到输出中:
'@{名称=file1.txt}.名称',
'@{名称=file2.txt}.名称',
'@{Name=file3.txt}.Name',
有没有办法更好地格式化它或删除对象信息?
你们非常接近。使用-expandproperty
参数为select-object
以简单的字符串数组形式获取属性。
$l = Get-ChildItem("c:\path") |
where {$_.Length -eq 0} |
select -expandproperty name | foreach($_) { "'$_,"}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)