ファイル名の%20をスペースに変更しますか? [コピー]

ファイル名の%20をスペースに変更しますか? [コピー]

私が使用しているファイルのリストがあります。%20名前にスペースを表します。

現在 %20 から空白 "" に変更するには、次のようにします。

for x in *.txt
  do mv $x $(echo $x | sed -e 's/%20/ /')
done

これは面白くない。以下の内容が出てきます。

usage: mv [-f | -i | -n] [-v] source target
       mv [-f | -i | -n] [-v] source ... directory

しかし、いくつかの画像をインポートするときに同じことをしましたが、うまくいきました。

for x in *_MG*.CR2
  do mv $x $(echo $x | sed -e 's/_MG/_IMG/')
done

誰かがそれを使っていることを忘れてしまいました。。 txtもう一つは.CR2、私がここで完全に見落としているのは何ですか?

私は仕事用ラップトップを使用しているので、他のソフトウェアをインストールするためにHomebrewを追加することはできません。オペレーティングシステムはMac OS Xです。

ベストアンサー1

すべての種類のファイルでrenameスペースを使用して置き換えます。%20

$ rename -n 's/%20/ /g' *

File%20with%20in00.yA2 renamed as File with in00.yA2
File%20with%20in01.h9H renamed as File with in01.h9H
File%20with%20in02.CNR renamed as File with in02.CNR
File%20with%20in03.PuP renamed as File with in03.PuP
File%20with%20in04.js8 renamed as File with in04.js8
File%20with%20in05.KdZ renamed as File with in05.KdZ

OS Xでは、Perlベースの特別なツールを使用できます。ユーティリティの名前変更。広く使用されているパッケージマネージャを使用してインストールできます。自分で作った:brew install rename

注:-n実際の名前を変更するには、オプションを削除してください。

おすすめ記事