Bash 리디렉션: 파일 설명자에 추가(2>>&1)

Bash 리디렉션: 파일 설명자에 추가(2>>&1)

기존 파일에 명령 출력(stdout 및 stderr)을 추가하려고 합니다.

내가 하고 싶은 것은 이것이다:

command >>file 2>>&1

문제는 2>>&1오류가 발생하지만 >>file 2>>file그렇지 않다는 것입니다.

그래서 리디렉션이 어떻게 작동하는지, 파일 설명자가 무엇인지, 그 안에 들어 있는 정보가 무엇인지 잘못 이해한 것 같습니다.

요약하면 다음 두 명령의 차이점은 무엇이며 첫 번째 명령은 작동하지 않지만 두 번째 명령은 작동하는 이유는 무엇입니까?

command >>file 2>>&1      #not working
command >>file 2>>file    #working

감사해요

답변1

당신이 원하는 것은 파일 설명자 1(stdout)을 설정하여 파일에 추가한 다음 fd 2(stderr)를 리디렉션하여 fd 1이 수행하는 작업을 수행하는 것입니다.

command >>file 2>&1

리디렉션 연산자가 아니기 2>>&1때문에 오류가 발생합니다 .>>&

읽다리디렉션Bash 매뉴얼에서 특히 섹션 3.6.5 및 3.6.8

답변2

태그가 지정되어 있으므로 이를 사용하여 stdout 및 stderr을 리디렉션(추가) bash할 수 있습니다 .&>>

command &>>file

관련 정보