私の現在の場所のサブディレクトリを繰り返し処理し、各ファイルを別々にgzipしたいと考えています。ディレクトリ内のファイルをビュンのために、私はbash内のすべてのサブディレクトリ内のすべてのファイルをgzipにする方法
for file in *; do gzip "$file"; done
を使用するが、これは単に現在のディレクトリとカレントディレクトリのないサブディレクトリ上で動作することができます。上記のステートメントを書き直して、すべてのサブディレクトリ内のファイルも圧縮できるようにするにはどうすればよいですか?
あなたの最後の文章はよくある誤った情報です。 Findは、ファイル名の開始位置と終了位置を認識します。それ自体、空白や改行やその他の面白いことには何の問題もありません。したがって '-exec gzip {}'は単一のファイル名でgzipを呼び出し、空白を区切り文字として解釈できる中間シェルが呼び出されないので、gzipはファイル名全体を受け取ります。検索のマンページのヒントは古くなっているように見えます:あなたのシェルは見つけるためにそれを渡す前に{}を解釈しようとする可能性がありますが、そのようなシェルは何年も見られていません(http://unix.stackexchange.com/q/ 8647/4485)。 –
あなたは毎日何か新しいことを学びます。レッスンありがとう! –
+1 * .gzファイルの除外 – GuruM