特定のファイル拡張子ストリップフォルダの再同期/コピー

特定のファイル拡張子ストリップフォルダの再同期/コピー

サブディレクトリがあるフォルダがたくさんあります。下記をご覧ください。

Books

-- Temp1.nfo

-- Temp2.txt

-- Temp3.doc


Books 2

-- Temp4.nfo

-- Temp5.txt

-- Temp6.doc

txtとdocファイルの拡張子をコピーしてディレクトリに入れたいです。一例

Final

--Temp2.txt

--Temp3.doc

 --Temp5.txt

--Temp6.doc

cpコマンドを使用してこれを実行できます。問題は、状態を表示できない、またはテストを実行できないことです。

 cp -u **/{*.mkv,*mp4,*avi} /home/joedoe/Books/

これを行うためにrsyncコマンドを書くのに役立つ人はいますか?

ベストアンサー1

SRC rsyncDEST構文はSRC DEST構文と非常によく似ているため、cp次のようなものを使用できます。

rsync -auv */*.{txt,doc} /home/joedoe/Books/

すべての* .txtファイルと* .docファイルをターゲットディレクトリにコピーします。

オプション:

  • -aアーカイブモード(ショートカット-rlptgoD
  • -u受信機で最新のファイルをスキップする(例cp -u:)
  • -v冗談を増やす

アーカイブオプションには-a再帰オプションも含まれているため、必要に応じて追加オプションを使用してこのフラグを無効にできます-r(ディレクトリもパターンと一致し、再帰を無効にするためコピーされます)。--no-r-aBook/my.doc/*.doc-a --no-r

出力は--dry-run次のとおりです。

$ rsync --dry-run -auv */*.{txt,doc} /home/joedoe/Books/
sending incremental file list
created directory /home/joedoe/Books
Temp2.txt
Temp3.doc
Temp5.txt
Temp6.doc

sent 221 bytes  received 69 bytes  580.00 bytes/sec
total size is 11  speedup is 0.04 (DRY RUN)

複数のパラメータを追加することも、-vより詳細な出力を取得することもできます。-vv-vvv

おすすめ記事