ディレクトリをマージして停止移動(mv)を続行する最良の方法は?


18

NAS(Linuxベース)でかなり大きなディレクトリを移動(mv)しましたが、手順を中断する必要がありました。通常のLinuxユーザーではないので、あとで続けて残りをマージすることもできます。

mv /oldisk/a /newdisk

手順は途中で完了しているため、/ oldisk / aの残りはまだ存在し、既にコピーされたファイルを含む/ newdisk / aはすでに存在しています。どのファイルがすでにコピーされているのかわかりません。ところで、もちろん、/ oldisk / aの下には、たくさんのサブディレクトリがあります。

残りのファイルを/ newdisk / aに移動/マージする最良の方法は何でしょうか?

回答:


28

rsync --verbose --archive --dry-run /oldisk/a/ /newdisk/a/

--dry-run(または-n)、それが実際に何もせずに何をするのか、あなたを示し、予行演習を行います。

問題ないようであれば、-nオプションなしでrsyncを実行します。

これは移動ではなくコピーであり、あなたがやっていることではありませんが、より安全です。--archive(または-a)すべての所有権を確保し、メタデータが保存されているタイムスタンプ(これは通常のコピーではないでしょう)。


2
コピーは問題ありません。後で古いディレクトリをいつでも削除できます。
ホルストウォルター

4
を使用--remove-source-filesして、正常にコピーされたファイルを削除できます。また、-Pまたは--progress行うことがありますどのように多くのより多くのファイルの推定値が表示されます。
deltab

1
したがって、移動の例として:rsync --remove-source-files --recursive --times --crtimes 1/* 2/
シュリダールSarnobat

1
@deltab、-progressは個々のファイルごとに新しいバーを描画しますが、代わりに転送全体に--info = progress2があります。
把友情留在無盐

うわー、それはかなり悲しいです。Mvは、それ自体でできるはずのことを行うために他のツールを必要とするため、間違いなく壊れています。私はこれを発見したばかりで、mvは既存のディレクトリへの書き込みを拒否しますが、これは非常に哀れです。このコマンドをより機能的なものに置き換える時間です。
nigratruo
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.