터미널 안팎에서 실행되는 명령을 만들려고 합니다(i3 창 관리자를 사용하고 있습니다 cmus
) .projectM-pulseaudio
내가 시도할 때
projectM-pulseaudio && cmus
cmus
ProjectM을 닫을 때까지 시작되지 않았습니다. 내가 시도할 때
cmus && projectM-pulseaudio
그러면 종료할 때까지 ProjectM이 시작되지 않습니다 cmus
.
내가 아는 한 이것은 cmus
명령줄 기반 도구인 반면 ProjectM은 그렇지 않습니다. 그래서 작동이 안되는 것인지, 아니면 다른 문제가 있는 것인지 궁금합니다. 어떤 아이디어가 있나요?
답변1
입력하는 대로
utility1 && utility2
이는 종료 상태가 0으로 종료될 때까지 시작되지 않음을 의미합니다(그렇지 않은 경우는 아님) utility2
.utility1
비슷하게,
utility1 || utility2
0이 아닌 종료 상태로 종료되면 의미가 utility2
실행됩니다 (그렇지 않으면 실행되지 않음).utility1
그리고
utility1 & utility2 &
이는 다음과 같습니다.
utility1 &
utility2 &
두 유틸리티를 모두 백그라운드 프로세스로 시작하고(둘 다 서로 독립적으로 시작됨)
utility1 & utility2
이는 다음과 같습니다.
utility1 &
utility2
utility1
먼저 백그라운드 프로세스로 작업한 다음 utility2
포그라운드 프로세스로 작업합니다 .
우연히도 이는 질문 제목이 정확하다는 것을 의미합니다.
cmus & projectM-pulseaudio
아니면 어쩌면
projectM-pulseaudio & cmus
(그러나 나는 이 프로그램들이 무엇을 하는지 모르기 때문에 둘 중 하나 또는 둘 다를 백그라운드 프로세스로 실행하는 것이 타당하지 않습니다.)
답변2
나는 뭔가를 생각해내려고 노력 중이야이 명령은 터미널에서 cmus를 실행하고 그 옆에 projectM-pulseaudio를 실행합니다(저는 i3 창 관리자를 사용하고 있습니다).
이건 아니야 i3
. 당신이 원하는 것은 이런 것이라고 생각합니다.
bindsym $mod+v exec projectM-pulseaudio, exec kitty cmus
터미널이 어떻게 작동하는지 이해해야 합니다. kitty
합자 및 그래픽 지원을 갖춘 가장 강력한 터미널이기 때문에 이를 사용하는 것이 좋지만 그림을 렌더링하기 위해 프레임 버퍼에서 Ranger를 사용합니다.
cmus 외에 쉘을 원하는 경우(완료해도 종료되지 않음)
bindsym $mod+v exec projectM-pulseaudio, exec kitty bash -c'cmus'