[Powershell]square bracketがファイル名に入っている場合には、Rename-Itemができない。Move-Itemで代用しましょう。

超まとめ

  • ※powershell v2.0の場合の話です。v4.0のRename-Itemには-LiteralPathオプションがあるので、問題ありません。
  • Rename-Itemには-LiteralPathオプションがないので、角括弧付きのファイルのリネームにはmove-itemを使用しよう。

説明

Rename-itemには、-LiteralPathオプションもないんだよね。
文字エスケープ(“`[“とかに置換)してファイル名を渡しても、エラーになっちゃう。

Move-Itemは-LiteralPathオプションがあるので、それで対応して欲しい、みたいなことらしいです。(参考→)
#v2.0では解決してません、というのがMS的回答らしいです。

コメントを残す