Я могу легко найти файлы с заданной строкой в имени:
me@comp:/usr/local/hydra/hydra-7.4.2$ find -D stat -name "*hack*"
./hack881663129.txt
./hack881663129_7.txt
./hack881663129_5.txt
./hack881663129_4.txt
./hack881663129_4_7.txt
./hack881663129_6.txt
./hack881663129_1_6.txt
./hack881663129_8.txt
Как я могу также распечатать информацию о файле, такую как размер, дата создания и т. Д .?
Выполните статистику для каждого найденного файла:
find . -name '*hack*' -exec stat {} \;
То же, с помощью xargs:
find . -name '*hack*' | xargs stat
Лучше, когда существуют символы-разделители в именах файлов:
find . -name '*hack*' -print0 | xargs -0 stat
Просто используйте параметр -printf
с правильными аргументами:
$ find -name "*hack*" -printf '%m %p %a\n'
644 ./hack881663129.txt Sat Feb 16 02:27:16.0189270840 2013
644 ./hack881663129_7.txt Sat Feb 16 05:30:12.0673185691 2013
644 ./hack881663129_5.txt Sat Feb 16 05:24:57.0441188136 2013
644 ./hack881663129_4.txt Sat Feb 16 05:22:21.0209189346 2013
664 ./hack881663129_4_7.txt Wed Feb 20 11:09:49.0786644191 2013
644 ./hack881663129_6.txt Sat Feb 16 05:26:49.0297187267 2013
664 ./hack881663129_1_6.txt Mon Feb 18 11:40:05.0991189262 2013
644 ./hack881663129_8.txt Sat Feb 16 05:31:37.0689185031 2013
См. man find
и найдите -printf
для других заполнителей.
Из этого Q & A: Как сделать так, чтобы вывод locate выглядел как `ll` или` ls -la`, но приятнее? рассмотрите возможность использования команды locate
, которая намного быстрее, чем find
. У меня есть небольшой скрипт, который вызывает его и устанавливает заголовок и информацию stat
, чтобы обеспечить форматирование, которое, я полагаю, вы ищете:
$ time llocate zhack
ACCESS OWNER GROUP SIZE MODIFIED NAME (updatdb last ran: 2018-05-22 20:45:05)
drwxr-xr-x root root 4096 2018-05-17 /usr/src/linux-headers-4.4.0-124/zfs/cmd/zhack
-rw-r--r-- root root 6 2018-05-02 /usr/src/linux-headers-4.4.0-124/zfs/cmd/zhack/Makefile.in
drwxr-xr-x root root 4096 2018-05-22 /usr/src/linux-headers-4.4.0-127/zfs/cmd/zhack
-rw-r--r-- root root 6 2018-05-19 /usr/src/linux-headers-4.4.0-127/zfs/cmd/zhack/Makefile.in
real 0m0.661s
user 0m0.665s
sys 0m0.003s
См. Ссылку, чтобы получить скрипт llocate
.