Я пытаюсь найти последние измененные файлы в моей системе, скажем, за последние 2 часа или около того. Команда, которую я использую:
sudo find / -mmin -120 -printf '%T@ %p\n' | sort -n | cut -f2- -d" " | more
Но вышеприведенная команда выводит много записей, содержащих строку /proc. Итак, есть ли какие-то лучшие способы, с помощью которых я могу удалить эти строки из вывода?
Кроме того, если у вас есть какие-либо более эффективные методы для решения вышеуказанной ситуации, пожалуйста, предложите. Единственный критерий состоит в том, что вывод должен содержать файлы, а также каталоги.
EDIT: -
Я изменил приведенную выше команду, чтобы также включить имена с [ f4], затем добавил ответ Арроника и ответ Афшина Хамеди на него. Конечный результат:
sudo find / ! -path '*/proc*' -type f -mmin -120 -exec ls -al {} \; | grep -v anystring | less
Я использовал бы -prune для такого рода вещей, например
find / \( -path /proc -o -path /sys -o -path /run \) -prune -o -mmin -120 -printf '%T@ %p\n'
Вы можете исключить путь '/ proc' следующим образом:
[sudo] find / ! -path "/proc" ...
, чтобы исключить записи «proc» на любом уровне пути, как показано ниже
[sudo] find / ! -path "*/proc/*" ...