1

Я хочу перечислить каждый файл, который заканчивается на "conf", и вывести результаты в данный файл (с помощью команды "find -exec").

Я попробовал это:

find -name *conf -exec /home/ubuntu/myfile

Это неправильно?

2 ответа2

10

-exec используется для запуска программы, а не для печати вывода. Используйте -print чтобы напечатать вывод, и перенаправление оболочки (>), чтобы сохранить этот вывод в файле:

find -name \*conf -print > /home/ubuntu/myfile

Обратите внимание, что я избежал * с обратной косой чертой; это связано с тем, что оболочка будет пытаться сопоставить подстановочный знак перед запуском find , поэтому, если вам случится иметь файл, оканчивающийся на conf в текущем каталоге, оболочка заменит *conf на это имя файла (или имена) перед запуском find .

5
find /path -type f -iname "*.conf" > /home/ubuntu/myfile

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .