Найкращий спосіб продовжити зупинений рух (mv) шляхом об’єднання каталогів?


18

Я перемістив (mv) досить великий каталог у своєму NAS (на базі Linux), але мені довелося перервати процедуру. Не будучи звичайним користувачем Linux, я хоч би міг просто продовжити і об'єднати решту пізніше в.

mv /oldisk/a /newdisk

Процедура виконана на півдорозі, тому решта / oldisk / a все ще існує, і / newdisk / a з уже скопійованими файлами вже присутній. Я не маю уявлення, які файли вже скопійовано. BTW, under / oldisk / a, звичайно, є безліч підкаталогів.

Який найкращий спосіб перемістити / об'єднати решта файлів у / newdisk / a?

Відповіді:


28

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

--dry-run(Або -n) буде робити сухий прогін, показуючи вам , що він буде робити на самому ділі , не роблячи нічого.

Якщо це виглядає нормально, запустіть rsync без -nпараметра.

Це буде копія, а не хід, що не зовсім те, що ви робите, але безпечніше. --archive(Або -a) забезпечує всі права власності і тимчасові мітки метадані зберігаються (що регулярна копія не буде).


2
Копія в порядку, старий каталог завжди можна видалити пізніше.
Хорст Вальтер

4
Ви можете --remove-source-filesвидалити файли, які були успішно скопійовані. Також -Pабо --progressпокаже оцінку, скільки ще файлів потрібно зробити.
дельтаб

1
так як приклад кроку:rsync --remove-source-files --recursive --times --crtimes 1/* 2/
Шрідхар Сарнобат

1
@deltab, --progress малює нову панель для кожного окремого файлу, натомість є --info = progress2 для всього транфера.
把 友情 留 在 无 盐

Нічого собі, це досить сумно. Mv, безумовно, зламаний, що йому потрібні інші інструменти, щоб зробити те, що він повинен вміти робити сам. Я щойно це з’ясував, mv відмовляється писати у існуючий каталог, що є досить жалюгідним. Час замінити цю команду чимось більш функціональним.
nigratruo
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.