링크 ux 스 크 립 트 2 > & 1 의 의미

1030 단어
먼저 2 > & 1 의 모든 의 미 를 차례대로 설명 한다.
2 와 1 은 모두 FD (File Descriptor 파일 식별 자) 입 니 다.Liux 시스템 에서 시스템 은 열 린 파일 마다 파일 식별 자 를 지정 하여 추적 합 니 다. 파일 표시 자 는 0 이상 의 정수 이 고 서로 다른 숫자 는 서로 다른 의 미 를 대표 합 니 다.셸 의 식별 자 는 보통 10 개, 즉 0 ~ 9. 시스템 이 기본적으로 세 개 를 차지 하 는 것 도 우리 가 자주 사용 하 는 것 이다.
0     
1      (stdout)
2        (stderr)

& 백 스테이지 실행
> 덮어 쓰기, > 추가.
그래서 전체적으로 이 명령 의 의 미 는 표준 오 류 를 재 설정 하고 배경 & 를 통 해 표준 출력 이 있 는 곳 에 출력 하 는 것 이다.
우리 ls 에 존재 하지 않 는 파일 a. txt 를 가정 합 니 다.
ls a.txt > file.log 2>&1

사실 이 명령 이 명확 한 명령 으로 표현 된다 면 이렇게 해 야 한다.
ls a.txt > file.log  2>file.log

이 는 두 번 째 쓰기 로 stdout 과 stderr 가 file 에 직접 보 내 면 file 이 두 번 열 리 기 때 문 입 니 다. 그러면 stdout 과 stderr 는 서로 덮어 씁 니 다. 이렇게 쓰 면 FD1 과 FD2 두 개 를 동시에 file 의 파 이 프 를 빼 앗 는 것 과 같 습 니 다. 첫 번 째 명령 은 stdout 을 file 에 직접 연결 하고 stderr 는 FD1 파 이 프 를 계승 한 후에 file 로 보 내 졌 습 니 다. 이때 file 은 한 번 만 열 렸 습 니 다.stdout 과 stderr 의 내용 을 포함 한 파이프 FD1 만 사 용 했 습 니 다.

좋은 웹페이지 즐겨찾기