Печать состояния файлов, обрабатываемых при использовании find

Я использую multi-procs в «xargs» для обработки множества zip-файлов. Как отобразить количество файлов, обработанных в мультипроцессах?

find -type f -iname \*.zip | xargs -IZ -P 5 sh -c 'unzip "Z"' 

Как я могу получить текущее количество обрабатываемых файлов.? Я просто хотел бы знать, сколько файлов уже обработано до сих пор ..? Предположим, у меня есть 1k zip-файлов, которые мне нужно знать, сколько zip-файлов было обработано до сих пор, как .. «Обработка файла: 200» «Обработка файла: 400» или «Обработка файла: 405 из 1000»

  • Итерация по наборам аргументов команды в Bash
  • Найти команду для поиска дерева каталогов
  • Shell, объединяющая 2 строки для ссылки на третью переменную
  • Заменить между шаблонами, которые начинаются и заканчиваются в разных строках
  • почему ls -d также перечисляет файлы и где они документируются?
  • Как сделать снимок сайта через скрипт оболочки?
  • Благодаря..

  • найти команду с помощью квантификатора regex, например {1,2}
  • Команды Bash внутри vi
  • Как я могу распечатать все, кроме последних n символов в bash?
  • Поиск файлов в порядке времени
  • Найдите список всех файлов с шаблоном даты, чтобы снести их вместе.
  • Bash: Как читать по одной строке за один раз из вывода команды?
  • One Solution collect form web for “Печать состояния файлов, обрабатываемых при использовании find”

    Попробуй:

     find -type f -iname \*.zip | xargs -IZ -P 5 sh -c 'unzip "Z"; echo "Z" >> done.txt' 

    и wc -l done.txt чтобы узнать, сколько всего сделано, или cat done.txt чтобы просмотреть их список.

    Обратите внимание, что он будет терпеть неудачу, если новый символ строки присутствует в любом имени файла. Если у вас есть что-то, чем использовать echo one_more вместо echo "Z" чтобы получить хотя бы то, что вы просили.

    Linux и Unix - лучшая ОС в мире.