SSH를 사용하여 nohup ffmpeg 명령을 시작하고 연결을 끊은 후에도 계속 실행하려면 어떻게 해야 합니까?

SSH를 사용하여 nohup ffmpeg 명령을 시작하고 연결을 끊은 후에도 계속 실행하려면 어떻게 해야 합니까?

SSH를 통해 일련의 FFMPEG 명령을 실행하려고 합니다. 내 SSH 클라이언트는 Windows Server 2019(버전 1809 빌드 17763.2114)의 기본 openssh(7.7.2.1) 클라이언트입니다. 내가 실행하려는 명령은 다음과 같습니다.

C:\Windows\System32\OpenSSH\ssh.exe -v [email protected] -n -t 'nohup /home/user1/ffmpeg/ffmpeg -f lavfi -i testsrc -f null - -nostdin -nostats -hide_banner -loglevel error &'

다른 stackexchange 답변은 "nohup" 및 "&" 명령을 사용하면 명령이 시작되고 콘솔이 해제됨을 나타냅니다. 내가 직면한 문제는 명령이 실행되지만 콘솔이 세션을 해제하지 않고 명령을 계속 실행한다는 것입니다.

줄 끝에 "\"를 추가하면 세션은 해제되지만 명령은 중지됩니다.

강제로 연결을 끊으면 ffmpeg 명령은 계속 실행되지만 Powershell 스크립트가 계속 실행될 수 있도록 프로세스를 해제하는 원활한 방법이 필요합니다. 이 모든 명령을 한 줄에 유지하고 싶습니다. 연결하고, 이 명령을 시작하고, 연결을 끊고 계속 실행하려면 어떻게 해야 합니까?

답변1

나는 빨리 답을 찾았습니다. 콘솔 출력을 리디렉션하여 내 명령을 수정해야 했습니다.

C:\Windows\System32\OpenSSH\ssh.exe -v [email protected] -n "nohup /home/user1/ffmpeg/ffmpeg -f lavfi -i testsrc -f null - -nostdin -nostats -hide_banner -loglevel error > /dev/null 2>&1  &  "

/dev/null을 출력을 쓸 다른 파일로 바꿀 수 있습니다.

관련 정보