2013-06-13 2 views
0

Я пытаюсь использовать stat с xargs, но я получаю сообщение об ошибке из stat, в котором указано, что мне не хватает операнда.Отсутствует операнд для stat

Ниже вся команда, я использую

find /my/path/Files_G** -type f | xargs stat --format='%s, %n' > my_output.txt\r 

Спасибо за любую помощь вы можете предоставить

+3

ли 'найти/мой/путь/Files_G ** -типа f' дает реальные данные? Потому что, если я попробую команду в каталоге с реальными данными, она работает на меня. – fedorqui

+0

независимо от того, работает ли он на вас, зависит от ваших 'xargs' и/или вашего' stat'. А именно, признает ли 'stat' _multiple_ filenames как аргументы и/или ваш' xargs' по умолчанию запускает команду once-per-arg или once-per-multiple-args. –

+1

@fedorqui ты был прав. Я ожидал, что файлы будут в каталоге, в котором я искал, но не было никаких каталогов – Boardy

ответ

0

попробовать либо:

find ... -type f | xargs -n 1 stat --format='%s, %n' 
find ... -type f | xargs -I '{}' stat --format='%s, %n' '{}' 

или на большинстве * X системы ООН, а также:

find ... -type f | xargs -i stat --format='%s, %n' '{}' 

(-i является сокращением для стандартной -I '{}')

См xargs(1) OpenGroup стандартной страницы руководства для более подробного объяснения ...