내가 할 경우 nohup은 파이프에서 작동합니까?
nohup cmd1 | cmd2 &
은 그 같은
nohup "cmd1 | cmd2" &
로?
은 내가 cmd1
로 nohup
모든 포트에서 수신 것이라고 싶습니다 8023.
내가 할 경우 nohup은 파이프에서 작동합니까?
nohup cmd1 | cmd2 &
은 그 같은
nohup "cmd1 | cmd2" &
로?
은 내가 cmd1
로 nohup
모든 포트에서 수신 것이라고 싶습니다 8023.
아니, 별도로 명령에 nohup을 추가해야합니다. 이 같은
뭔가를 권장합니다 :
nohup sh -c "cmd1 | cmd2" &
또는 대안 :
nohup $SHELL <<EOF &
cmd1 | cmd2
EOF
nohup cmd1 | cmd2 &
nohup: ignoring input and redirecting stderr to stdout
링크가 작동하지 않습니다. –
@ JasmineLognnes 링크에 내 답변과 함께 게시 된 동일한 오류 메시지가 포함되어 있습니다. – Skynet
으로 다음과 같이 이것은 아니, 난 그냥 지금 확인했다의 대안는 I가 단말기로부터 표준 입력, 표준 출력과 sterr 재 라우팅함으로써
(cmd1 | cmd2) > logfile < /dev/null 2>&1 &
추천이 많은 I는 적어도 선호 nohup을 신택스와 같은 효과를 얻을 수있다.
그건'nohup'처럼 HUP 시그널로부터 명령을 보호하지 않습니다. 'trap ("HUP; cmd1 | cmd2) logfile 2> & 1 &'이 필요합니다. –
사실이지만 쓰여진 것처럼, 닫는 터미널이 처음부터 프로세스에 HUP를 보내지 못하게합니다. –
누군가가'$ SHELL '이 무엇인지 설명하고 왜 필요한지 설명해주십시오. –
'$ SHELL'은 현재 실행중인 쉘을 포함하고 있습니다. 대부분의 리눅스 시스템에서는'/ bin/bash'이지만'/ usr/bin/zsh' 또는 다른 것일 수 있습니다. '$ SHELL' 변수를 사용하는 이점은 일반적인 쉘 설정을 사용하여 명령이 실행된다는 것입니다. – Wolph
'EOF &'가 나에게 적합하지 않습니다. – RoVo