[英]Delete folder which has "[" and "'" using powershell
我想使用 powershell 删除文件夹。这是文件夹名称
C:\File\Coastal [new]
C:\File_new\Coastal.[new]
C:\File\Russia`s.Book
C:\File_new\Russia`s Book
它看起来像 ' 和 [] 制造问题。 我尝试了以下命令:
Get-ChildItem "C:\File\" | Where{$_.Name -Match "Coastal[\s\.][new]"} | Remove-Item -recurse -Force -Verbose
Get-ChildItem "C:\File_new\" | Where{$_.Name -Match "Coastal[\s\.][new]"} | Remove-Item -recurse -Force -Verbose
Get-ChildItem "C:\File\" | Where{$_.Name -Match "Russia`s[\s\.]Book"} | Remove-Item -recurse -Force -Verbose
Get-ChildItem "C:\File_new\" | Where{$_.Name -Match "Russia`s[\s\.]Book"} | Remove-Item -recurse -Force -Verbose
在正则表达式中, -match
运算符作为其 RHS 进行操作, [
是一个元字符,您使用字符集[\s\.]
来匹配单个空白字符( \s
)或文字就证明了这一点\.
(顺便说一句: .
内部不需要 escaping [...]
)。
因此,您必须使用\[
来转义那些您希望被视为文字的[
实例,特别是在[new]
substring 中。
或者 - 尽管可读性较差 - 您可以使用字符集来表示文字[
: [[]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.