ls에서 표준 오류 제거

ls에서 표준 오류 제거

존재하지 않는 파일 이름을 실행하면 ls출력에서 ​​이를 보고합니다. 해당 출력을 제거하고 싶지만 파일이 발견되면 계속 보고하고 싶습니다. 이것이 보고서 아래의 stderr 출력입니까?

$> ls foo
ls: cannot access foo: No such file or directory

저는 tcsh를 사용하고 있지만 bash가 대안이 될 수 있습니다.

답변1

이것이 보고서 아래의 stderr 출력입니까?

ls예, 가능합니다. 사용 중인 버전에 따라 다르지만 대부분의 구현에서는 stderr에 오류가 인쇄될 것이라고 생각합니다. 표준 오류를 제거하려면 다음을 수행하십시오 tcsh.

( ls foo > /dev/tty ) >& /dev/null

답변2

언제든지 다음을 수행할 수 있습니다.

sh -c 'ls foo 2>/dev/null'

이게 부정행위인가요?

관련 정보