私は、いくつかのファイルに相当するダウンロードされた.pdfからすべての特殊文字を削除しようとしていますが、OS X環境ではありますが、まさに探していたソリューションに出くわしました。
MacOS Xでの保存中にファイル名から特殊文字を自動的に削除する機能。
sed
Linux環境に同様の方法(使用または他の機能)を実装できますか?
私は、いくつかのファイルに相当するダウンロードされた.pdfからすべての特殊文字を削除しようとしていますが、OS X環境ではありますが、まさに探していたソリューションに出くわしました。
MacOS Xでの保存中にファイル名から特殊文字を自動的に削除する機能。
sed
Linux環境に同様の方法(使用または他の機能)を実装できますか?
回答:
rename
コマンドでこれを行うことができます。特殊文字を含む.pdfファイルのあるフォルダーにいる場合:
rename 's/[^a-zA-Z0-9]//g' *.pdf
これにより.pdf
、いずれの場合もA〜Z 以外の文字または数字で終わるファイルから文字が削除されます。このリストに追加できます:
rename 's/[^a-zA-Z0-9_]//g' *.pdf
このバージョンでは、アンダースコアを使用できます。
mv
か?
*のファイル用 do mv "$ file" $(echo "$ file" | sed -e 's / [^ A-Za-z0-9。- ] / / g'); 完了
rename
方法と同じですが、間違いなく入力するのが難しい
filename
ファイルごとに「名前を変更できません:無効または不完全なマルチバイト文字またはワイド文字」が表示されます。