Linux 초기화 스크립트 0<&- &>는 어떤 기능을 수행합니까?

Linux 초기화 스크립트 0<&- &>는 어떤 기능을 수행합니까?

init.d서버에서 실행되는 여러 서비스를 제어하기 위해 스크립트를 직접 작성하려고 합니다 Linux. 나는 다음과 같은 내용을 온라인에서 보았습니다.

nohup $EXEC_SCRIPT 0<&- &> $LOG_FILE & echo $! > $PID_FILE

내가 이해하는 한도에서는:

  • nohup캡처 hangup신호
  • $EXEC_SCRIPT실행할 명령을 포함하는 변수입니다.
  • 0<&- &>이전에 이런 일이 발생하지 않았습니다.
  • $LOG_FILE$EXEC_SCRIPT로그 파일 경로 와 유사 하지만 포함
  • &$LOG_FILE백그라운드에서 로그인을 시작하시겠습니까?
  • $!마지막 백그라운드 명령의 PID입니다.
  • >$!결과 쓰기$PID_FILE

이 지식을 사용하여 문제를 해결할 수 있지만 0<&- &>완전히 당황스럽습니다. 나는 애초에 적어도 부분적으로 이해하지 못하는 내용을 포함하는 것을 좋아하지 않습니다.

답변1

리디렉션입니다.

  • 0<&-파일 설명자 0(표준 입력)을 닫습니다.
  • &>stdout 및 stderr 리디렉션(이 경우 로그 파일로)

echo확실히 전에는 그런 적이 없었나요 $!? $!명령으로 해석되며 다음과 같은 결과가 발생할 가능성이 높습니다.

-bash: 18552: command not found

답변2

&<- 파일 설명자를 닫습니다. 그러나 더 근본적으로, 작은 "&" 원자를 인터넷에서 검색하는 것은 고통스러울 수 있습니다! 바라보다이 웹사이트배경 정보에 대한 bash 리디렉션 정보.

관련 정보