🐧 Альтернативы команды cp на Linux для демонстрации прогресса и скорости

by itisgood

Вы когда-нибудь хотели увидеть скорость и прогресс при копировании файлов с помощью командной строки?

Для копирования файлов, папок и других данных вы, вероятно, использовали бы команду ditto или «cp», если вы знакомы с командной строкой операционных систем Linux или Unix.

Хотя команды ditto и «cp» полезны, иногда использование простой команды «cp» может занять много времени и утомить.

Параметр «-v» (подробный) в команде «cp» может предоставить вам дополнительную информацию о процессе копирования.

Однако недостатком является то, что эта команда не включает индикатор хода процесса копирования.

В Linux есть другие альтернативные команды, которые могут копировать файлы и папки, показывая ход и скорость процесса копирования. Ниже приведены альтернативные команды:

1. Команда rsync

«Rsync» – одна из лучших команд, которая помогает копировать файлы через терминал.

Объем данных, копируемых из удаленного места назначения, уменьшается при использовании этой утилиты.

Он также используется для создания резервных копий данных, копирования данных между компьютерами и зеркалирования.

Команда «rsync» имеет следующий синтаксис:

rsync options Source Destination

Использование опции «-av» с «rsync» – самая простая форма этой команды.

Как показано ниже, данная команда скопирует все файлы, находящиеся в «testfolder», в целевую папку с именем «Downloads»:

rsync -av testfolder/ Downloads/
Вывод покажет вам имена файлов, размер отправленного и полученного файла, общий размер файла и скорость процесса копирования.
«–progress» – это флаг, используемый в команде «rsync» для получения общего прогресса скопированного содержимого.
rsync -av --progress testfolder/ Downloads/

Еще один флаг, который можно включить в команду «rsync», – «–stats».

Параметр –stats предоставляет более подробную информацию о передаче файлов, такую как количество созданных, удаленных или регулярно передаваемых файлов, общее количество отправленных байтов и общее количество полученных байтов. Запишите приведенную ниже команду, чтобы получить всю информацию, относящуюся к процессу копирования файла.

rsync -av --progress --stats testfolder/ Downloads/

2. Команда pv

Вы можете использовать команду «pv» для копирования одного файла, поскольку она предоставляет статистику, относящуюся к прогрессу и скорости.

В следующем случае «pv» выведет «входной файл» в «stdout», который затем перенаправляется в «выходной файл» с помощью оператора «>».

Когда вы это сделаете, он одновременно выведет всю информацию о скорости и прогрессе на терминал.

Файл, скопированный таким образом, будет иметь такие же права, как если бы вы его создали.

pv inputfile > outputfile

3. Команда tar

Если вы хотите скопировать несколько файлов или каталогов, то лучше использовать команду tar в терминале.

Укажите исходную и целевую папки в команде «tar» с параметром «-C» в сочетании с «pv», чтобы просмотреть скорость и ход процесса.

tar c testfolder | pv | tar x -C Downloads

4. Команда dd

В терминале команда «dd» используется для копирования или конвертации файлов.

Это свободно доступный инструмент командной строки с открытым исходным кодом.

В приведенной ниже команде мы покажем вам, как использовать команду «dd» для получения статистики копирования файла:

Определите исходную папку в «if» и целевую папку в «of» и установите «progress» в качестве параметра статуса.

sudo dd if=inputfile of=/Downloads status=progress
Выполните команду «dd» и проверьте информацию, отображаемую в выводе.

Заключение

В Linux существует несколько альтернатив команде cp для отображения скорости и прогресса процесса копирования файлов или папок.

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

You may also like

Leave a Comment