Я хотел бы считать весь обычный файл на корневой каталог с командами:
$ find ~ -type f | xargs echo | wc -w
xargs: unmatched single quote; by default quotes are special to xargs unless you use the -0 option
Это запрашивает
xargs: unmatched single quote; by default quotes are special to xargs unless you use the -0 option
Какова проблема с использованием?
Кажется, что некоторые Ваши имена файлов имеют апострофы (одинарная кавычка) на их имена.
К счастью, find
и xargs
имейте пути вокруг этого. find
-print0
опция наряду с xargs
-0
опция производит и использует список имен файлов, разделенных NUL
(\000
) символ. Имена файлов в Linux могут содержать ЛЮБОЙ символ, КРОМЕ NUL
и /
.
Так, что Вы действительно хотите:
find ~ -type f -print0 | xargs -0 --no-run-if-empty wc -w
Читать man find;man xargs
.