Используйте это: (ls может сортировать, работает с именами файлов с пробелами или необычными символами)
find . -name *foo* -print0 | xargs -0 ls -lah
«-print0» означает, что имена файлов, такие как, file foo 1
будут получать выходные данные с find
последующим нулем. Аргумент "-0" для xargs указывает на то, что он ожидает такого рода ввода, поэтому имена файлов с пробелами ls
правильно передаются команде.
xargs
Строительство в некоторых отношениях лучше , чем , find etc -exec ls {} \;
потому что все имена файлов будут посланы ls
сразу, так что если вы хотите , чтобы отсортировать их все метки времени (используя ls
), что - то вроде этого произведения:
find . -iname *pdf -print0 | xargs -0 ls -ltr
В системе NetBSD «-printx» также является опцией (мне кажется, это полезный аргумент, но как бы то ни было, у нас есть xargs -0, и это нормально):
find . -name *foo* -printx | xargs ls -lah
(не для Ubuntu)