ディレクトリ構造を維持しながら、ディレクトリ内のすべてのファイルをバックアップハードドライブにコピーする必要があります。これは可能ですか?
find . -name '*.*' -exec cp --parents \{\} /target \;
その後、バックアップハードドライブを新しいコンピュータにコピーしたいのですが、ファイルが保存先にすでに存在する場合は、コピーしたくないのでスキップするだけです。
これを行う最良の方法は何ですか?
ベストアンサー1
find
aと組み合わせる必要はありませんcp
。私はrsync
この作業にそれを使用します。
「すべて」をコピーし、権限と所有権を維持したい場合(そしてコピーする必要のないコンテンツをスキップするには)「Try Run」などを使用してください。
sudo rsync -Havn sourcedir/ targetdir/
よかったら、削除して実際のn
コピーを作成してください。
sudo rsync -Hav sourcedir/ targetdir/
末尾のスラッシュはsourcedir/
重要で、で説明されていますman rsync
。
ハードリンクがない場合はスキップでき、H
検索プロセスが速くなります。
rsync
権限と所有権に問題がなければsudo
。