쉘에서 VLC를 호출할 때 출력을 억제하는 방법

쉘에서 VLC를 호출할 때 출력을 억제하는 방법

bash에서 VLC를 호출할 때 VLC에서 얻는 출력을 비활성화하고 싶습니다. 아래 이미지에서 출력을 볼 수 있습니다.

그렇다면 어떻게 비활성화합니까?

설명된 대로 출력을 /dev/null로 리디렉션합니다.여기작동하지 않습니다.

그림에서 프로세스를 종료하려면 종료 신호를 두 번 보내야 합니다. 프로세스가 하나만 있는 경우 왜 그럴까요? 아니면 두 개가 있나요? 어쩌면 실제로 두 개의 프로세스가 있고 내 명령을 사용하면 첫 번째 프로세스의 출력만 리디렉션될 수 있습니다. ?

백그라운드에서 실행한 다음 종료 신호를 보내면 처음에는 프로세스가 더 이상 셸에서 실행되지 않고 창에서만 실행되는 것처럼 보이지만 곧 일부 메시지가 다시 표시됩니다. 사진을 살펴보세요:

어쨌든 저는 그 출력을 비활성화하고 싶습니다.

업데이트: 백그라운드에서도 실행하고 싶습니다.

vlc &> /dev/null 

다음은 작동해야 하지만 지금 시도해 보았는데 잘 작동하지 않습니다.

vlc "filename" &> /dev/null & 

이것이 내가 얻는 것입니다:

파일을 재생했는데 처음에는 괜찮아 보였지만 디렉토리를 변경하고 다른 명령을 실행하기 시작했고 VLC 출력이 다시 나타났습니다.

하지만 이번이 처음 시도한 것이었고 지금은 효과가 있으므로 앞으로도 효과가 있을 것이라고 생각합니다.

답변1

를 사용하면 vlc > /dev/null표준 출력이 리디렉션되지만 /dev/null표준 오류는 터미널로 이동합니다. vlc &> /dev/null두 표준 출력을 모두 리디렉션하는 명령을 사용해야 합니다.그리고표준 에러. 나는 이것을 테스트했고 작동합니다. 설명서에 따르면 vlc -q"조용한" 모드(출력 억제)가 활성화됩니다. 아직 테스트해 보지 않았습니다.

편집 "백그라운드에서"가 무엇을 의미하는지 완전히 확신할 수 없지만 프로그램 화면( sudo apt install screen)을 사용하면 터미널에서 명령을 시작한 다음 터미널을 닫지만 명령은 계속 실행될 수 있습니다. nohup이것도 가능합니다. 또는 데스크탑에서 Alt-F2를 누르면 명령을 실행하라는 메시지가 나타날 수 있습니다. 거기에서 vlc를 실행할 수 있지만 화면과 달리 나중에 터미널에서 vlc와 상호 작용할 수는 없습니다.

이 질문에 대한 또 다른 편집 내용은 정확히 필요한 것 같습니다.명령줄 모드에서 VLC 출력을 비활성화하는 방법은 무엇입니까?

관련 정보