Как перемещать несколько файлов с помощью rsync, показывая прогресс?

Если вам нужен только определенный порт (скажем, если вы используете веб-приложение, такое как Jetty или Tomcat), просто выполните:

Настройки -> Сеть -> Установите один из адаптеров в качестве NAT -> Нажмите «Переадресация портов» -> Установить соответствующий хост и гостевой порт.

Как только вы сохраните, вы можете просто перейти с локального компьютера на localhost: hostport, и он будет перенаправлен на соответствующий порт соответствующего порта и вы закончили.

3
задан 25 May 2018 в 12:54

7 ответов

Вы можете использовать Coreutils просмотра прогресса [Ф2] . После установки подача IT-1, просто отправить [Ф3] процесс в фоновом режиме и обеспечивают [Ф4] с его PID:

[Ф1]

использовать [F5], чтобы показать список всех запущенных процессов coreutils с их прогрессом. См. [ф6] и [Ф2] дополнительные функции и примеры.

Дополнительная литература с большим количеством разных подходов: как я могу переместить файлы и посмотреть на прогресс (например, с прогресс-бар)?

1

4
ответ дан 8 June 2018 в 13:56

Фон

mv только переименовывает ссылку на индекс, когда перемещение файла / каталога в одной и той же файловой системе [раздел] mv копирует файл / каталог и после этого удаляет оригинал между файловыми системами [разделы].

В вашем примере вы переходите к другой файловой системе, поэтому rsync выполнит ту же работу (копирование). Вы можете добавить команду, чтобы впоследствии удалить исходное дерево каталогов (когда вы уверены, что копирование действительно работает).

Из man rsync

-P The -P option is equivalent to --partial --progress. Its pur‐ pose is to make it much easier to specify these two options for a long transfer that may be interrupted. There is also a --info=progress2 option that outputs statistics based on the whole transfer, rather than individual files. Use this flag without outputting a filename (e.g. avoid -v or spec‐ ify --info=name0) if you want to see how the transfer is doing without scrolling the screen with a lot of names. (You don’t need to specify the --progress option in order to use --info=progress2.)

Запустите ту же самую rsync, и если он ничего не передает, файлы копируются, и вы можете удалить исходные файлы или дерево каталогов.

Пример

Копировать с помощью rsync [ ! d8] $ ls -l totalt 2064196 -rw------- 1 sudodus sudodus 1921843200 apr 26 18:44 orig.iso -rw-rw-r-- 1 sudodus sudodus 191889408 maj 23 2016 test.iso $ rsync --info=progress2 -Ha *.iso /tmp 2,113,732,608 100% 171.10MB/s 0:00:11 (xfr#2, to-chk=0/2)

Проверьте (если хотите)

$ rsync --info=progress2 -Ha *.iso /tmp 0 0% 0.00kB/s 0:00:00 (xfr#0, to-chk=0/2)

Удалите файлы и каталоги с помощью

rm -r *.iso # remove the same as the source in the rsync command line
4
ответ дан 20 July 2018 в 13:34

фон

[ф5] это только переименование ссылку на inode, при перемещении файла/каталога в пределах одной файловой системы [раздел] [ф6] копирование файла/каталога и после этого удалив оригинал между файловыми системами [разделы].

в вашем примере, вы переходите в другую файловую систему, так что [ф7] будет делать ту же работу (копирование). Вы можете добавить команду для удаления после Оригинальное дерево каталогов (если вы уверены, что копирование действительно работал). Это может быть сделано в shellscript (что позволяет некоторым ручной осмотр, по крайней мере, пока вы не чувствуете себя в безопасности с операцией).

от [ф8]

[Ф1]

Запустите этом [F9] и командной строки снова, и если он не передает ничего, файлы копируются и вы можете удалить исходные файлы и дерево каталогов.

пример

копии [ф10]

[Ф2]

проверьте (если вы хотите)

[Ф3]

удалить файлы и каталоги с

[Ф4]
4
ответ дан 8 June 2018 в 13:56

это будет выглядеть так:

[Ф1]

пример:

[Ф2]
1
ответ дан 8 June 2018 в 13:56
  • 1
    Почти идеальный, но это не Ср, а не МВ – Askerman 25 May 2018 в 13:26
  • 2
    @Askerman Добавьте переключатель --remove-source-files. – PerlDuck 25 May 2018 в 13:34
  • 3
    Что оставит позади все каталоги – Askerman 25 May 2018 в 13:38

Фон

mv только переименовывает ссылку на индекс, когда перемещение файла / каталога в одной и той же файловой системе [раздел] mv копирует файл / каталог и после этого удаляет оригинал между файловыми системами [разделы].

В вашем примере вы переходите к другой файловой системе, поэтому rsync выполнит ту же работу (копирование). Вы можете добавить команду, чтобы впоследствии удалить исходное дерево каталогов (когда вы уверены, что копирование действительно работает).

Из man rsync

-P The -P option is equivalent to --partial --progress. Its pur‐ pose is to make it much easier to specify these two options for a long transfer that may be interrupted. There is also a --info=progress2 option that outputs statistics based on the whole transfer, rather than individual files. Use this flag without outputting a filename (e.g. avoid -v or spec‐ ify --info=name0) if you want to see how the transfer is doing without scrolling the screen with a lot of names. (You don’t need to specify the --progress option in order to use --info=progress2.)

Запустите ту же самую rsync, и если он ничего не передает, файлы копируются, и вы можете удалить исходные файлы или дерево каталогов.

Пример

Копировать с помощью rsync [ ! d8] $ ls -l totalt 2064196 -rw------- 1 sudodus sudodus 1921843200 apr 26 18:44 orig.iso -rw-rw-r-- 1 sudodus sudodus 191889408 maj 23 2016 test.iso $ rsync --info=progress2 -Ha *.iso /tmp 2,113,732,608 100% 171.10MB/s 0:00:11 (xfr#2, to-chk=0/2)

Проверьте (если хотите)

$ rsync --info=progress2 -Ha *.iso /tmp 0 0% 0.00kB/s 0:00:00 (xfr#0, to-chk=0/2)

Удалите файлы и каталоги с помощью

rm -r *.iso # remove the same as the source in the rsync command line
4
ответ дан 17 July 2018 в 13:28

это будет выглядеть так:

rsync -aP /home/me/movies/movie1.avi /home/me/movies/movie2.avi /mnt/hdd

пример:

~ rsync -aP /usr/bin/{free,man} /tmp sending incremental file list free 18,808 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=1/2) man 107,008 100% 102.05MB/s 0:00:00 (xfr#2, to-chk=0/2)
0
ответ дан 17 July 2018 в 13:28

Он будет выглядеть так:

rsync -aP /home/me/movies/movie1.avi /home/me/movies/movie2.avi /mnt/hdd

Пример:

~ rsync -aP /usr/bin/{free,man} /tmp sending incremental file list free 18,808 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=1/2) man 107,008 100% 102.05MB/s 0:00:00 (xfr#2, to-chk=0/2)
1
ответ дан 20 July 2018 в 13:34
  • 1
    Почти идеально, но он вместо cp вместо mv – Askerman 25 May 2018 в 13:26
  • 2
    @Askerman Добавить --remove-source-files переключатель. – PerlDuck 25 May 2018 в 13:34
  • 3
    Что оставит позади все каталоги – Askerman 25 May 2018 в 13:38

Другие вопросы по тегам:

Похожие вопросы: