1
A
答えて
2
(bashの)これは名前に下線を持つカレントディレクトリ内または下にあるすべてのフォルダを見つけて、あなたが言及ように名前を変更します:
for d in $(find . -name '*_*' -type d) ; do
new=$(echo $d | sed -e 's/_/ /g')
mv $d $new
done
+0
私は$ dと$ newを引用符で囲んでいました。ありがとうございました。 – user860778
0
あなたは
ような何かを試みることができます#> ls -l | grep '^d' | awk '{oldname = $9 ; gsub(/_/, " " ,$9); print "mv " oldname " " $9 }' > temp.script
#> chmod 744 temp.script
#> ./temp.script
最初にテストしてください:)
0
システムには、 rename
コマンドが必要ですか?いくつかのシステムでは、それが存在し、いくつかの種の正規表現を使用して変更を加えることができます。私は(つまりPerlスクリプト、)Perlの正規表現を使用するバージョンを使用します。一方
find . -type f -name '*_*' -print0 | xargs -0 rename 's/_+/ /g'
を、Linuxの標準バージョンでは、比較することによって、むしろ微弱になりがち(と何をしないだろうあなたが必要です)。
ディレクトリの名前を変更する場合は、ファイルの名前を変更する前に、またはすべてのファイルの名前を変更してから、ディレクトリの名前を変更することをお勧めします。それらを混在させると、あるディレクトリにあるファイル名にアクセスする際に名前の変更に問題が生じるが、ファイル名が生成されてからディレクトリの名前が変更されたことになります。 find
のオプションとして-depth
を使用しても、安全であるとは限りません。
関連する問題
- 1. アンダースコア文字のUnixソート処理
- 2. バッチリネームフォルダを再帰的に
- 3. 鉛白スペースの削除 - UNIX
- 4. スペースとスペースを置き換えます。アンダースコアを含むファイル名
- 5. sedは.csvから単語+スペースを削除します。 unix | solar
- 6. es6アンダースコアからインポート
- 7. unixのディレクトリにコピーするときにfilenameのアンダースコアをスペースで置換する方法
- 8. パスからファイル名を取得し、アンダースコアをスペースに変換します
- 9. 変数からスペースを一括して削除し、アンダースコアで置換する
- 10. NSTimeIntervalからunixタイムスタンプ
- 11. バッチイメージファイル - スペースをファイル名のアンダースコアに置き換えます。
- 12. Symfonyはスペースとアンダースコアを含むURLパラメータを取得します
- 13. スペースをNetbeansコードテンプレートのアンダースコアに置き換えます
- 14. 適切なRailsのアンダースコアのアンダースコアは「アンダースコア」ですか?
- 15. lastlog(unix&bash)からのキャッチエラー
- 16. WindowsからのUnix権限
- 17. UNIXタイムスタンプからFATタイムスタンプ
- 18. Unix - 子ブロックからソート
- 19. アンダースコア
- 20. (アンダースコア)
- 21. Unix/Windowsスクリプティングヘルプ:WindowsからUnixにコマンドラインパラメータを渡す
- 22. Unix/Linux Bashスクリプティング:sedがスペースを尊重しない
- 23. ハッシュのためにキーでスペースをアンダースコアに置き換えてください
- 24. アンダースコアを配列内の各オブジェクトキーのスペースで置き換えます。
- 25. アップロードプロセス中にファイル名のすべてのスペースをアンダースコアに置き換えます。
- 26. 文字、数字、ピリオド、ハイフン、アンダースコア、スペースを許可するjavascriptの正規表現
- 27. アンダースコアの使用方法をアンダースコア
- 28. 列挙型のリストからアンダースコアを削除しますか?
- 29. PhantomJSからUNIXホスト名を取得
- 30. ディレクトリからファイル名を取得KSH Unix
本当ですか?ファイル名のスペースはいくつかの面倒を引き起こす可能性があります。 Unixはそれらをうまくサポートしています。 –
クローサーに:これはSOのための適切な質問です - それは特定のタスクを行うためのシェルスクリプト(プログラム)を書く方法を尋ねています。あなたが別の質問の複製としてそれを閉じていたなら、あなたは私からもっと同情を得るでしょう。 –
私は実際にGoogleでこれと反対の仕事を探していました(スペースはアンダースコアになります)。 – VMDX