Я использую bash.
Предположим, у меня есть каталог файлов журнала /var/myprogram/logs/
.
В этом каталоге у меня есть много подкаталогов и подкаталогов, которые включают в себя различныетипы файлов журналов из моей программы.
Я хотел бы найти три новейших файла (с последними изменениями), чье имя начинается с 2010
, под /var/myprogram/logs/
, независимо от подкаталога и копииих в мой домашний каталог.
Вот что я бы сделал вручную
1. Просмотрите каждый каталог и выполните ls -lt 2010*
, чтобы увидеть, какие файлы, начинающиеся с 2010
, были изменены в последнее время.
2Пройдя все каталоги, я узнаю, какие три файла самые новые.Поэтому я вручную копирую их в свой домашний каталог.
Это довольно утомительно, поэтому я подумал: а может быть, мне удастся как-нибудь передать некоторые команды вместе, чтобы сделать это за один шаг, желательно без использования сценариев оболочки?1019 * Я искал find
, ls
, head
и awk
, которые я мог бы использовать, но не нашел правильный способ склеить их.
Дайте мне знать, если мне нужно уточнить.Спасибо.