i3에서 하나의 키 바인딩으로 두 개의 애플리케이션을 시작하는 방법은 무엇입니까?

i3에서 하나의 키 바인딩으로 두 개의 애플리케이션을 시작하는 방법은 무엇입니까?

터미널 안팎에서 실행되는 명령을 만들려고 합니다(i3 창 관리자를 사용하고 있습니다 cmus) .projectM-pulseaudio

내가 시도할 때

projectM-pulseaudio && cmus

cmusProjectM을 닫을 때까지 시작되지 않았습니다. 내가 시도할 때

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'

관련 정보