2021-09-09

Powershell 對於檔名有 [ 中括弧 ] 等保留字元的不適應症狀處理 Deal with filename contains reserved characters like [ ] in Powershell

Get-ChildItem 明明找得到 [ABC].txt,但用 Get-Item 卻找不到


雖然改用 [System.IO.File] 就能正確存取
且在 這邊 (微軟官方文件) 可以找到相關的 Method 來使用,但還是相當不方便
畢竟不是所有指令都能用 [System.IO.File] 來代替


所以比較好的做法是用另一個類別處理來將保留字元直接跳脫 (Escape)
[Management.Automation.WildcardPattern]::Escape($Files[0].FullName)

前後記得用 ( 小括弧 ) 包起來,才能放到指令裡面當作參數使用
([Management.Automation.WildcardPattern]::Escape($Files[0].FullName))




沒有留言:

張貼留言