Powershell 复制文件名中带有奇怪字符的文件项(即[])
我必须复制一个文件名,如下所示Powershell 复制文件名中带有奇怪字符的文件项(即[]),powershell,powershell-2.0,copy-item,Powershell,Powershell 2.0,Copy Item,我必须复制一个文件名,如下所示 $filename = "Sport.EL#15.csv.[]" 放入另一个文件夹 如果我使用 copy-item -force Sport.EL#15.csv.[] $dest_path 它不起作用 既然我这么做了: foreach ($f in Get-ChildItem $pathfile | Where {!$_.PsIsContainer} | Where {$_.Name -match $filename}){....} 错误是
$filename = "Sport.EL#15.csv.[]"
放入另一个文件夹
如果我使用
copy-item -force Sport.EL#15.csv.[] $dest_path
它不起作用
既然我这么做了:
foreach ($f in Get-ChildItem $pathfile | Where {!$_.PsIsContainer} | Where {$_.Name -match $filename}){....}
错误是
Bad argument to operator '-match': parsing "Sport.EL#15.csv.[]" - Unterminated [] set..
我认为问题在于文件名中的[]。如何解决问题?尝试使用:
copy-item -literalpath $filename $dest_path
评论后编辑:
要解决-match
问题,请尝试:
Where {$_.Name -match [regex]::escape($filename)}
-match
获取一个正则表达式
值,您需要转义正则表达式语言中使用的每个特殊字符
,以避免出现类似问题。@rschirin很高兴为您提供帮助!