*.txt
拡張子を手動で除外すること(例えば、OR設定や使用)に加えて、すべての種類のファイルを除外するrsyncまたはcpコマンドはありますか(rsyncを使用して*.pdf
以下のすべてのサブフォルダとすべてのファイルを除く)?*.jpg
-maxdepth
--exclude=dir/*
dir/
私はそれを使用するのに少し問題がありますが、-type d
一方rsync
またはcp
両方が必須です-r
。使用すると、-r
上記の除外コマンドのいずれかを使用するかどうかにかかわらず、フォルダを再帰的にコピーして汚れます。
ここに関連する質問があります:cp AND rsyncは、すべてのサブディレクトリからすべての種類のすべてのファイルを除いてディレクトリのみを残します。
[編集]:私はそれがrsync -r -t -v --exclude=*.*
同じように働くことを発見しましたrsync -r -t -v --exclude=dir/*
最初のケースでは、rsyncバージョンfile.extension
と本質的に同じすべてのファイル形式を除外します。find -type d
2番目のケースでは、デフォルトではrsync -r -t -v --exclude=dir/*
/ dirとそのサブフォルダ内のすべてのファイルとサブフォルダが除外されます。 findのように動作するようにしてください。 -最大深さ0
答え1
次のrsyncオプションを使用すると、ディレクトリツリーのみをコピーできます。
rsync -av -f"+ */" -f"- *" /path/to/src /path/to/dest/
コマンドについて詳しく説明します。
https://www.cyberciti.biz/faq/unix-linux-bsdosx-copying-directory-structures-trees-rsync/