私はこのようなディレクトリ構造とファイルを持っています
data/
data/a.txt
data/folder/
data/folder/b.txt
data/folder/folder/
data/folder/folder/c.txt
...
a.txt
、b.txt
、およびc.txt
は、コンピューターで生成され、頻繁に更新される大きなファイルです。それらはバックアップされるべきではありません-しかし私はディレクトリ構造をバックアップしたいです:
data/
data/folder/
data/folder/folder/
すべてのフォルダーを指定せずに、rsyncと--exclude-fromを使用してこれを行うにはどうすればよいですか?rsync -a data/* --exclude-from=exclude.rsync "" --onlyfoldersandnotfiles""
のようなものですか?
手伝ってくれてありがとう !
$ rsync -a -f"+ */" -f"- *" source/ destination/
「2つの-f引数は、それぞれ「すべてのディレクトリをコピーする」、「他に何もコピーしない」という意味です。
詳細: http://psung.blogspot.com/2008/05/copying-directory-trees-with-rsync.html
rsync -a --include='*/' --exclude='*' source/ destination/
基本的に、最初にすべてのディレクトリを含め、次にすべてのファイルを除外します。
rsync -a -f"-! */" source/ destination/
フィルタルールは、「ディレクトリ以外のものはすべて除外する」という意味です。
1つのフォルダーを除くすべてを同期したいが、その除外されたフォルダーのディレクトリ構造を保持したい場合は、次のようにする必要があります。
$ rsync -a -f"+ /var/log/**/*/" -f"- /var/log/**/*" source/ destination/
例として、 exclude-list および rsyncコマンド を参照してください。