[Comm] find and xargs
Konstantin S. Uvarin
khedin на mail.ru
Вт Мар 31 12:29:32 MSD 2009
On Monday 30 March 2009 23:32:18 Vladimir Karpinsky wrote:
> Здравствуйте!
>
> Насколько я понял man, для предотвращения нежелательных ситуаций с xargs, в
> случае когда find ничего не находит, рекомендуется использовать -print0 в
> find и -0 в xargs, но:
>
> find ./ -size -1k -print0 | xargs -0p ls -l
> ls -l ?...n
>
> файлов меньше 1k в текущем каталоге нет, и ls -l получает на вход пустую
> строку со всеми вытекающими. Вероятно, я что-то не понял --- наставьте на
> путь истинный.
man xargs:
--no-run-if-empty, -r
If the standard input does not contain any nonblanks, do not
run the command. Normally, the command is run once even if
there is no input.
This option is a GNU extension.
==========
А -print0 и -0 -- это для случая, когда в выводе кавычки, пробелы и прочая.
Кстати, часто вполне достаточно find | xargs -d\\n -- если, конечно, нет в
выводе символов перевода строки.
--
Konstantin S. Uvarin jabber:lodin на jabber.ru
WinNT error 003: FPU error - enter any 11 digit prime number to continue.
Подробная информация о списке рассылки community