find
명령을 사용하여 모든 "html" 책을 검색하고 ,
추가로 내 주의를 산만하게 하지 않고 백그라운드에 배치하고 싶습니다 .
$ find / -type f -iregex '.*html.*\.pdf' > html_books.md &
그러나 permission denied
오류가 계속 나를 괴롭혔습니다.
$ find: /usr/sbin/authserver: Permission denied
find: /.Spotlight-V100: Permission denied
해결책으로 stderrs를 리디렉션했습니다.
$ find / -type f -iregex '.*html.*\.pdf' > html_books.md 2>&1 &
결과적으로는 html_books.md
엉망이 됩니다.
오류를 자동으로 삭제하는 방법은 무엇입니까?
답변1
오류를 제거하려면 stderr를 다음 위치로 리디렉션하기만 하면 됩니다 /dev/null
.
find / -type f -iregex '.*html.*\.pdf' > html_books.md 2>/dev/null &
답변2
표준 출력 스트림과 별도로 표준 오류 스트림을 로 리디렉션할 수 있습니다 /dev/null
.dr01에 표시된 대로, 또는 액세스할 수 없는 디렉터리를 삭제할 수 있습니다.
find / '(' -type d ! '(' -executable -readable ')' -prune ')' -o \
-type f -name '*html.*.pdf' >html_books.md