在路径中,其中有像引号冒号等不规则字符。如果你脚本中的活动路径是来自某段信息,你一定会需要返回符合规则的路径。
这里有段函数教你在任何路径中使用下划线去替换其中不规则部分:
1
2
3
4
5
6
7
8
9
|
function Get-LegalPathName($Path)
{
$illegalChars = [System.IO.Path]::GetInvalidFileNameChars()
foreach($illegalChar in $illegalChars)
{ $Path = $Path.Replace($illegalChar, '_') }
$Path
}
|
同时来测试一下它的效果:
1
2
|
PS> Get-LegalPathName 'some:"illegal"\path<chars>.txt'
some__illegal__path_chars_.txt
|
支持所有PS版本