1. 사용explainshell.com:

1. 사용explainshell.com:

누구든지 내가 이것을 이해하도록 도와줄 수 있나요?

echo $?-- 일종의 변수가 출력되는 것으로 알고 있습니다...

ls >> $File 2>&1 ----누가 이것이 무엇을 하는지 설명해줄 수 있나요?

답변1

echo는 $?이전 명령의 오류 코드를 반환합니다.

노력하다

false ; echo $?
true ; echo $?

ls >> $File 2>&1, >>ls의 ( ) 출력을 파일 이름의 끝으로 리디렉션하고 $File오류 2>&1(있는 경우)도 리디렉션합니다.

  • >>파일에 추가하는 것을 나타냅니다.

답변2

1. 사용explainshell.com:

또는

2. 쉘의 매뉴얼 페이지를 검색하십시오.

다음을 수행하여:

    $ man sh #replace sh with another shell if you need to

Ctrl-F를 누르고 검색 /패턴을 입력한 후 Enter를 눌러 검색 패턴의 스타일을 지정할 수 있습니다.


요약:

에코: 텍스트 한 줄을 표시합니다.

$?: 가장 최근에 실행된 명령/파이프라인의 종료 상태로 확장됩니다.

엘에스: 디렉토리 내용 나열

>>: 추가 출력

2>&1:stderr(fd=2)를 stdout(fd=1)로 리디렉션합니다(이 컨텍스트에서는 추가 모드의 "$File"입니다).

답변3

이 질문에서 더 중요한 것은 리디렉션 연산자와 관련된 문제입니다.

ls >> $File 2>&1

ls stands for list contents of current directory

>> means append to end of file

$FILE means there is a variable declared as FILE having some value, could be the path to a file.

2>&1 means redirecting both stdin and sterr to the target file, in this case $FILE.

관련 정보