2014-12-10 12 views
0

По сути, я пытаюсь избежать этого, не используя 2>/dev/null, есть ли способ? Я хотел бы, чтобы выход chown -c был связан с ним.команда поиска linux - нужно фильтровать сообщения «нет такого файла или каталога» без перенаправления stderr

ex: find/-user fred -exec chown -c joe {} \;

Я хотел бы, чтобы вывести «изменить владельца„{имя файла}“от Фреда к джо» Чаун -c обеспечивает эту функциональность, но я не могу получить выход, если я должен перенаправить все к избегайте ошибок поиска!

Спасибо за любой совет!

ответ

1

Используйте процесс подстановки:

find/-user fred -exec chown -c joe {} \; \ 
    2> >(grep -v 'no such file or directory' >&2) 

2> перенаправляет STDERR; >(...) читает перенаправленный stderr, grep -v удаляет ненужные строки, а >&2 возвращает оставшиеся строки обратно в stderr

+0

Спасибо! Это именно то, что мне нужно. – mbadm