71209


**削除したいディレクトリ名**

> [日本] 東京 大阪

**削除したいディレクトリパス**  
以下のディレクトリを再帰的に削除したい

[code]

    L:\1\地図\[日本] 東京 大阪\
    
[/code]

* * *

**試したこと1**

[code]

    PS C:\WINDOWS\system32> Set-Location -Path L:\1\地図
    
    PS C:\WINDOWS\system32> Remove-Item -Path [日本] 東京 大阪
    Remove-Item : 引数 '東京' を受け入れる位置指定パラメーターが見つかりません。
    
[/code]

ダブルクォーテーション付与。何も削除されませんでした

[code]

    PS C:\WINDOWS\system32> Remove-Item -Path "[日本] 東京 大阪"
    
[/code]

シングルクォーテーション付与。何も削除されませんでした

[code]

    PS C:\WINDOWS\system32> Remove-Item -Path '[日本] 東京 大阪'
    
[/code]

* * *

**試したこと2**

[code]

    PS C:\WINDOWS\system32> Set-Location -Path "L:\1\地図[日本] 東京 大阪"
    Set-Location : パス 'L:\1\地図\[日本] 東京 大阪' が存在しないため検出できません。
    
[/code]


CC BY-SA 4.0
2020-10-15T00:23:39.187
71199
2020-10-15T06:58:57.510
7886
question
windows powershell
PowerShellで、半角スペースのあるディレクトリ(以下)を削除したい


`[角括弧]`は正規表現で使用されるメタ文字なので、`-Path`または省略時のパスとして使用すると通常の文字列として解釈されません。  
そのため、角括弧を通常の文字列として扱いたい場合は`-Path`の代わりに[`-LiteralPath`](https://nasunoblog.blogspot.com/2016/07/powershell-
bracket-literalpath.html)を使います。  
またはバッククォートを使うことで、エスケープすることができます。

下記のいずれかの記述で削除できるはずですのでお試しください。

[code]

    Remove-Item -LiteralPath "[日本] 東京 大阪" 
    Remove-Item -Path '`[日本`] 東京 大阪'
    Remove-Item -Path "``[日本``] 東京 大阪" 
    
[/code]


CC BY-SA 4.0
2020-10-15T04:37:09.993
71209
2020-10-15T06:58:57.510
2020-10-15T06:58:57.510
9820
9820
71199
answer