Хвост нескольких файлов и вывод в качестве дополнительного столбца с результатами поиска

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

Из следующих результатов {1}, я хотел бы добавить в качестве дополнительного столбца последнюю строку данных {2}

Где {1} = find . -iname 'updated.txt' find . -iname 'updated.txt' и {2} = tail -n1

Я использую bash в Mavericks

2 Solutions collect form web for “Хвост нескольких файлов и вывод в качестве дополнительного столбца с результатами поиска”

Ну вот:

 find . -iname 'updated.txt' -exec ls -l {} \; -exec tail -n1 {} \; 

Более простая альтернатива, но с меньшим контролем над форматированием ls :

 find . -iname 'updated.txt' -ls -exec tail -n1 {} \; 

ОБНОВИТЬ

Как вы сказали в комментариях, вы предпочитаете иметь выход ls и tail выходящий бок о бок для каждого файла.

Вы можете запустить подоболочку для каждого совпадения, чтобы echo вывод двух команд рядом:

 find . -iname 'updated.txt' -exec sh -c 'echo $(ls -l "{}") $(tail -n1 "{}")' \; 

Аналогично, вы можете использовать paste :

 find . -iname 'updated.txt' -exec bash -c 'paste <(ls -l "{}") <(tail -n1 "{}")' \; 

Или вы можете запускать две команды find параллельно и вставлять их вывод следующим образом:

 paste \ <(find . -iname 'updated.txt' -exec ls -l {} \;) \ <(find . -iname 'updated.txt' -exec tail -n1 {} \;) 
 $ find . -iname 'updated.txt' -printf '%M %u %g %s %Tc %p\t' -exec tail -n1 {} \; 

Результат будет выглядеть следующим образом:

 -rw-r--r-- user group 4853 2013-12-22T00:58:32 MSK ./path/updated.txt Last line of the updated.txt. 
  • Файл журнала хвоста на нескольких машинах по ssh
  • разделение CSV и сохранение заголовка без промежуточных файлов
  • Преобразование строк новой строки в нуль-ограничение при использовании хвоста
  • `tail -f` частично потребляет последнюю строку, не заботится о новых или nul
  • Отрицательные аргументы для головы / хвоста
  • $ (tail) в переменную удаления \ n
  • Трубопровод от grep до awk не работает
  • Как выполнить эту команду оболочки из Python?
  • Как сделать «хвост -f» файлов с чередованием логов?
  • Редактирование текстового файла с Vim не обновляет tail -f
  • Помощь с модификацией команды
  • Linux и Unix - лучшая ОС в мире.