У меня есть настройка, в которой мне нужно использовать «find», чтобы найти 0 или более файлов в определенном каталоге, однако «find» всегда выдает ошибку, когда нет файлов, которые соответствуют определенной проверке. Можно ли запустить 'find', не пропуская ошибки, если файлы не соответствуют шаблону?
3 ответа
1
Например, @grawity сказал, что find не сообщает об этих ошибках. В любом случае, если вы хотите подавить вывод ошибок, перенаправьте stderr в /dev /null:
find . HERE_YOUR_FIND_PARAMS 2&> /dev/null
Один типичный случай, когда find выполняет запись в stderr, происходит, когда в вашем подпапке поиска находится каталог, у которого нет разрешения на открытие.
1
Можете ли вы просто игнорировать ошибки? Или, более конкретно, перенаправить их в /dev/null
?
0
Единственное рабочее решение, которое я нашел, было:
find something 2&> /dev/null || true
Это гарантирует, что окончательный код завершения равен нулю даже при отсутствии совпадений, а также скрывает ошибки stdout.