1

find /home/user/test -type f -mtime -7 | xargs stat --printf "%Y %s %n\n"

если первая команда возвращает пустоту, то вторая возвращает

stat: missing operand
Try `stat --help' for more information

если find вернул список файлов, то возвращается информация из stat

Можно ли сделать, чтобы вторая команда не запускалась если первая команда вернула пустоту?

2

мой моск неожиданно выдал такое решение:

for dir in `find /home/user/test -type f -mtime -7`; do stat --printf "%Y %s %n\n" $dir; done

но не знаю, плохо ли оно или хорошо

3

axe⇓ пишет:

мой моск неожиданно выдал такое решение:
for dir in `find /home/user/test -type f -mtime -7`; do stat --printf "%Y %s %n\n" $dir; done
но не знаю, плохо ли оно или хорошо

Очень не кошерно использовать for для этих целей, особенно если в названии файлов присутствуют пробелы.

ужо лучше использовать средства find в место xargs
В данном случае нужен ключик -exec

find /home/user/test -type f -mtime -7 -exec stat --printf "%Y %s %n\n" {} ;\
+ axe

4

Спасибо!
Это то что мне надо, но чуть-чуть поправлю (последние два символа):

find /home/user/test -type f -mtime -7 -exec stat --printf "%Y %s %n\n" {} \;