
저는 유닉스 스크립팅의 초보자입니다. 누구든지 다음 줄의 의미를 설명할 수 있습니까?
BTEQTEMPDELLOGS=$LOGS/${tablename}.DELlog
rm $BTEQTEMPDELLOGS 2>/dev/null 1>/dev/null
답변1
("삭제") 명령은 rm
파일을 삭제합니다. 삭제될 파일의 이름은 BTEQTEMPDELLOGS
직접적으로 주어지지 않고 변수에 주어집니다. 모든 오류 메시지( 2>
)는 일반 출력( )과 동일하게 rm
전송 (폐기)됩니다 ./dev/null
1>
변수 자체는 BTEQTEMPDELLOGS
변수 LOGS
, 리터럴 "/" 및 끝에 문자열 ".DELlog"가 있는 변수를 연결하여 첫 번째 줄에서 tablename
구성 됩니다.
다음은 (입력 및) 출력 리디렉션에 대한 문서입니다.GNU bash 매뉴얼: 리디렉션.
귀하의 예에서는 입력이 아닌 출력만 리디렉션됩니다. 1>
발생한 일반 메시지 rm
(일반적으로 없음) 를 리디렉션하고 2>
오류 메시지(파일을 찾을 수 없음 등)만 리디렉션합니다.
다음은 이러한 숫자에 대한 자세한 내용입니다(프로그래머 관점의 "파일 핸들").stdin(0), stdout(1) 및 stderr(2) 프로그램 입/출력.
관련 문서는 다음과 같습니다 /dev/null
.Wikipedia: NULL 장치