Пакет libmysql++ -dev не найден в Debian buster/sid

Вы также можете использовать pv , «просмотрщик каналов», чтобы отслеживать, сколько и как быстро данные обрабатываются и / или выводятся. по процессу.
В Debian / Ubuntu вам необходимо установить пакет pv , чтобы использовать его.

pv a.img.gz | gzip -cd > a.img

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

Вы также можете контролировать вывод…

gzip -cd a.img.gz | pv > a.img

… или даже комбинировать две команды и контролировать ввод и вывод одновременно:

pv -cN input a.img.gz | gzip -cd | pv -cN output > a.img

(В этом случае вам понадобятся pv -c параметр, чтобы два индикатора выполнения не перезаписывали друг друга, и -N , чтобы дать им (произвольные) имена, чтобы знать, что есть что.)

1
21.03.2019, 15:38
1 ответ

Предполагая, что вы хотите рекурсивно сделать это со всеми обычными файлами в каталоге верхнего -уровня и ниже$topdir:

find "$topdir" -type f -exec 7za a {} {} \;

Для одного каталога, содержащего только файлов, которые вы хотите сжать, вы должны использовать

for pathname in "$topdir"/*; do
    7za a "$pathname" "$pathname"
done

Разница здесь в том, что скрытые файлы не будут сжаты. Если вы включите опцию оболочки dotglobв bashс помощью shopt -s dotglob, то цикл будет включать скрытые имена.

С помощью find(, что означало бы меньше ввода ), вы могли бы работать с файлами в одном каталоге с помощью

find "$topdir" -maxdepth 1 -type f -exec 7za a {} {} \;
1
27.01.2020, 23:41

Теги

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