LINUX.ORG.RU

Re: Обработка вывода find

Только что проверил:

find . -mtime +1 -maxdepth 1 -type f -exec basename {} \;

Всё работает, в чём проблема?

ejka ()
Ответ на: Re: Обработка вывода find от ejka

Re: Re: Обработка вывода find

Дело в том, что для подобного случая:

find . -mtime +1 -maxdepth 1 -type f ';' \
  -exec cp -f {} copy_of.`basename {}` ';'

basename возвращает имя файла с точкой и слешем.

Tsahes ()
Ответ на: Re: Re: Обработка вывода find от Tsahes

Re: Re: Re: Обработка вывода find

А всё потому, что в команде:

find -mtime +1 -maxdepth 1 -type f -exec cp -f {} copyof.`basename {}` \;

подстановка `...` выполняется _до_ выполнения find. А посему:

for i in `find -mtime +1 -maxdepth 1 -type f`; do cp -f $i copyof.`basename $i`; done

ejka ()

Re: Обработка вывода find

Если надо вывести только имена файлов, то:

find | awk -F '/' '{print $NF;}'

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.