Linux 의 데이터 흐름 재 설정 소결

1807 단어
1. 데이터 흐름 의 방향 을 바 꾸 는 의미:
우 리 는 셸 에서 하나의 command 가 실 행 될 때 입력 데이터, 출력 정확 한 데이터 와 출력 오류 데이터 가 있 을 수 있다 는 것 을 알 고 있 습 니 다. 이에 따라 데이터 가 기 록 된 장 치 는 입력 데이터 장치, 정확 한 데 이 터 를 출력 하 는 장치 와 잘못된 데 이 터 를 출력 하 는 장치 가 있 습 니 다.표준 입력 장치 stdin, 즉 키보드, 표준 정확 한 출력 stdout, 즉 화면 단말기, 표준 오류 출력 stdout, 즉 화면 단말기.데이터 흐름 의 방향 을 바 꾸 는 것 은 특정한 command 와 같은 stdin, stdout, stderr 를 지정 한 곳 으로 설정 하 는 것 입 니 다. 예 를 들 어 지정 한 파일 이나/dev/null 등 입 니 다.
 
2. 데이터 흐름 의 방향 을 바 꾸 는 방식:
           a) stdin 재 설정: 코드 0, 사용 < (0 < 도 사용 가능)
           b) stdout 을 1 로 재 설정 합 니 다. 사용 > 또는 > (1 > 또는 1 > 을 사용 할 수도 있 습 니 다)
           c) stderr 재 설정: 코드 2, 사용 2 > 또는 2 >>
Remarks:
           a) ls - l/home >./new file 과 ls - l/home 1 >./new file 은 등가 이다.
           b) 1 > 과 1 > 의 차 이 는 1 > 은 덮어 쓰 는 방식 으로 정확 한 데 이 터 를 지정 한 파일 이나 장치 에 출력 하 는 것 을 나타 낸다.1 >> 는 지 정 된 파일 이나 장치 에 정확 한 데 이 터 를 누적 적 으로 출력 하 는 것 을 나타 낸다.2 > 와 2 > 의 차 이 는 유사 하 다.
           c) 데이터 흐름 의 방향 을 바 꾸 는 몇 가지 특수 한 응용 장면:               
  1: find              filename_1 ,          filename_2 
find /home -name .bashrc 1> filename_1 2> filename_2

  2: find                         filename ,           
find /home -name .bashrc 1> filename 2>&1   #2>&1     
find /home -naem .bashrc &> filename

           d)/dev/null 은 쓰레기통 블랙홀 설비 로 이 장 치 를 안내 하 는 모든 정 보 를 먹 을 수 있다.           e) 주의해 야 할 것 은 << 입력 이 방향 을 바 꾸 는 것 이 아니 라 '입력 을 끝 냅 니 다' 라 는 뜻 입 니 다.예 를 들 어 cat > filename < EOF 를 입력 한 후에 cat 명령 은 키보드 의 입력 을 받 기 시 작 했 습 니 다. 키보드 로 문 자 를 입력 한 후에 EOF 를 입력 하면 cat 명령 은 키보드 의 입력 을 받 지 않 습 니 다.이 안에 있 는 EOF 도 다른 문자 일 수 있 지만 모두 EOF 를 사용 하 는 습관 이 있다.즉, << 입력 을 중지 하 는 표 시 를 정의 할 수 있 습 니 다.

좋은 웹페이지 즐겨찾기