rm 명령을 사용하여 이 쉘 스크립트 조각을 설명해주세요.

rm 명령을 사용하여 이 쉘 스크립트 조각을 설명해주세요.

저는 유닉스 스크립팅의 초보자입니다. 누구든지 다음 줄의 의미를 설명할 수 있습니까?

BTEQTEMPDELLOGS=$LOGS/${tablename}.DELlog

rm $BTEQTEMPDELLOGS 2>/dev/null 1>/dev/null

답변1

("삭제") 명령은 rm파일을 삭제합니다. 삭제될 파일의 ​​이름은 BTEQTEMPDELLOGS직접적으로 주어지지 않고 변수에 주어집니다. 모든 오류 메시지( 2>)는 일반 출력( )과 동일하게 rm전송 (폐기)됩니다 ./dev/null1>

변수 자체는 BTEQTEMPDELLOGS변수 LOGS, 리터럴 "/" 및 끝에 문자열 ".DELlog"가 있는 변수를 연결하여 첫 번째 줄에서 tablename구성 됩니다.

다음은 (입력 및) 출력 리디렉션에 대한 문서입니다.GNU bash 매뉴얼: 리디렉션.

귀하의 예에서는 입력이 아닌 출력만 리디렉션됩니다. 1>발생한 일반 메시지 rm(일반적으로 없음) 를 리디렉션하고 2>오류 메시지(파일을 찾을 수 없음 등)만 리디렉션합니다.

다음은 이러한 숫자에 대한 자세한 내용입니다(프로그래머 관점의 "파일 핸들").stdin(0), stdout(1) 및 stderr(2) 프로그램 입/출력.

관련 문서는 다음과 같습니다 /dev/null.Wikipedia: NULL 장치

관련 정보