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 & command2
command1 && command2