2016-12-13 11 views
3

私は数日間この作業をしており、それを把握することはできませんでした。多くの研究を行ったが、これまでのところ何も働いていないので、私は尋ねると思った。ここで私はどこにいるのですか:私はbash 3.2.57(1)をターミナルで実行しており、このコードを以下のように動作させることができました。すべての作業は、私が作業しているファイルサーバー上のフォルダに 'cd'を実行すると、余分な文法を '_'で置き換えます。これは、ファイルサーバーをMacから「/」を好まないMicrosoft Sharepointに移行するためです。端末はすべてのサブディレクトリにコマンドを適用します

for i in *; do mv "$i" "${i//[\/<>:\\|*\'\"?]/_}"; done 

ここで、コードがすべてのサブディレクトリで実行されるようにしようとしています。ファイルサーバーは非常にぎこちなく、たくさんのサブフォルダは、私が逃げることができなかった名前にスペースを含んでいます。 助けがあれば助かります!前もって感謝します。その出力は、あなたのmvコマンドでエコーを置き換え、その後(検索オプションを国防省でない場合)上で動作するファイルのリストである場合

find . -type f | while read i ; do echo "$i" ; done 

+1

mv synthaxでうまくいっています。 –

答えて

1

使用してを見つけるの代わりに。

関連する問題