我使用Copy-Item
cmdlet复制了大量的png和txt文件,遗憾的是我发现一个有趣的程序员决定使用“CON”作为文件名来重新记录连接信息。
鉴于“con”是保留字,Copy-Item
返回:
Copy-Item:无法处理路径'xxx \ con.txt',因为目标代表保留的设备名称。
并且鉴于此名称无法更改,并且它已在我需要复制的每个文件夹中使用, 有没有办法使用Powershell复制所有这些“con.cfg”和“con.txt”文件?
我用谷歌搜索,但我发现只有“不要使用骗局!”这样的建议。或“不要使用Powershell复制这些文件”。
答案 0 :(得分:2)
我还没有找到PowerShell的解决方案,但您应该可以使用以下命令通过命令提示符重命名文件:
ren \\.\<absolute path> <new name>
例如:
ren \\.\C:\stuff\con.cfg stuff.cfg
您可以通过PowerShell调用命令提示符,当然:
cmd /c "ren \\.\C:\stuff\con.cfg stuff.cfg"
显然你可以在那里使用PowerShell变量
$dir = "C:\stuff"
cmd /c "ren \\.\$dir\con.cfg stuff.cfg"
答案 1 :(得分:1)
您可以尝试使用通配符引用它们:*on
?
示例:强>
ls | ? {$_.Name -match "*on.cfg"} | del
正则表达式示例:
ls | ? {$_.Name -match "^\won\.cfg"} | del