단일 명령으로 터미널에서 2개의 emacs 창을 생성하는 방법은 무엇입니까?

단일 명령으로 터미널에서 2개의 emacs 창을 생성하는 방법은 무엇입니까?

emacs단일 명령을 사용하여 터미널에서 2개의 별도 창/인스턴스를 열려고 합니다 . 나는 시도했다:

emacs &; emacs &

(오류: bash:syntax error near unexpected token ;그리고

emacs & && emacs &

(오류: bash:syntax error near unexpected token &&하지만 두 방법 모두 오류가 발생합니다. 하나의 명령에 2개의 emacs 창을 표시하려면 어떻게 해야 합니까?

답변1

;또는 &또는 등 의 명령 사이에는 단일 구분 기호만 필요하므로 &&시도해 보세요.

emacs & emacs &

실행하면 emacs &; emacs &백그라운드에서 emacs를 시작한 다음 ;명령 없이 실행하므로 bash이 구분 기호( )가 필요하지 않다고 주장합니다 syntax error near unexpected token ;.

맨손으로 실행하면 다음과 같은 오류가 발생합니다 ;.

bash$ > ;
bash: syntax error near unexpected token `;'

모든 쉘이 이 작업을 수행하는 것은 아닙니다. 예를 들어 다음 zsh과 같이 할 수도 있습니다.

zsh$> ; ; ls; ; ls&; ls&; ; ls &; ;

문제는 없습니다(그러나 ;;공백 자체가 구분 기호이고 case명령문에서 사용되기 때문에 공백이 없으면 문제가 되지 않습니다).


시도한 또 다른 것은 첫 번째 명령이 성공적으로 끝나는 경우에만 두 번째 명령(이후)을 실행해야 하기 emacs & && emacs &때문에 더 나쁩니다 . 그러나 첫 번째 명령이 완료될 때까지 기다리지 않고 백그라운드 셸에서 실행하고 있으므로 이 조건은 그다지 의미가 없습니다. 다시 말하지만, 명령 사이에 단일 구분 기호만 사용하거나 결국에는 .&&&&command1 & command2command1 && command2

관련 정보