오류를 삭제하고 백그라운드에서 자동으로 실행

오류를 삭제하고 백그라운드에서 자동으로 실행

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

관련 정보