スペースを下線に置き換えないように、detox のデフォルトの使用を変更する方法

スペースを下線に置き換えないように、detox のデフォルトの使用を変更する方法

基本的な使い方に満足デトックスファイル名を削除するためにスペースを常に単一の下線に変更したくないことを除いて。スペースを単一のスペースに置き換えたいと思います。

どうすればいいのかご存知ですか?

答え1

私はそれに慣れていませんが、それを使用して次のようにファイル名を変換できるdetoxことを知っています。tr

$ echo "a_b__c" | tr -s '_' ' '
a b c

$ echo "a b    c" | tr -s ' '
a b c

明らかにechoコマンドをあなたのdetox行に置き換えてください。

答え2

私は解読に慣れていませんが、ファイル名を一括変更する他のより柔軟な方法があります。

とともにPerlベースの名前変更ユーティリティrename(このバージョンはDebianやその派生製品やprename他のディストリビューションで利用可能です。)任意のPerlコードを指定してファイル名を変更できます。たとえば、現在のディレクトリのすべてのファイル名にある一連のスペースを単一のスペースに置き換えます。

rename 's/\s+/ /g' *

また、句読点の周りのスペースは削除され、.下線を除く他の句読点とスペースシーケンスは置き換えられます。

rename 's/\s* \s*/ /g; s/\s*([^[:alnum:]_. ])[^[:alnum:].]//g' *

zshをシェルとして使用すると、素晴らしい機能を使用できますzmv機能。これにより、現在のディレクトリのファイル名にある複数のスペースがautoload -U zmv単一.zshrcのスペースに圧縮されます。

zmv '*' '${f//  ##/ }'

関連情報