왜 파일을 받을 수 없나요? [폐쇄]

왜 파일을 받을 수 없나요? [폐쇄]

난 달린다:

find / -user alice -type f 2>>findlog.txt   

검색 결과는 findlog.txt에 저장되어 있는데, 캡처하려고 하면 다음과 같이 출력됩니다. 여기에 이미지 설명을 입력하세요. 왜 파일을 캡처할 수 없는지 아시나요?

답변1

명령이 오류 없이 실행되면 "2>>"는 파일에 아무 것도 추가하지 않습니다. 다음 중 하나를 시도해 보십시오.

find / -user alice -type f >>findlog.txt
find / -user alice -type f  >findlog.txt

findlog.txt를 추가할지 아니면 덮어쓸지 여부에 따라 다릅니다. 또는 다음을 시도해 보세요.

find / -user alice -type f  >findlog.txt 2>findlog.err

stdout과 stderr을 각각 저장하십시오.

답변2

귀하의 cat명령은 잘 작동합니다. 문제는 명령을 실행할 때 명령이 검사하는 모든 디렉터리 find에 액세스할 수 있는 권한이 없기 때문에 "권한 거부" 오류가 많이 발생한다는 것입니다.find

find오류 스트림을 명령에서 파일 2>>로 리디렉션 하므로 findlog.txt이러한 오류 메시지를 추가하게 됩니다 findlog.txt(반면 `의 일반 출력은 find대부분 터미널에서 끝날 가능성이 높습니다).

find오류가 아닌 출력을 에 저장하려면 findlog.txt다음을 사용하십시오.

find / -find f -user alice >findlog.txt

이는 먼저 출력 파일을 잘라낸(비운) 다음 /사용자가 소유한 디렉토리 안이나 아래에 있는 모든 일반 파일의 경로 이름을 alice출력 합니다. >>대신 파일에 추가하는 데 사용됩니다 .

이 명령으로 생성된 오류 메시지를 삭제하려면 find오류 스트림을 다음으로 리디렉션하십시오 /dev/null.

find / -find f -user alice >findlog.txt 2>/dev/null

관련 정보