2013-10-18 3 views
1

MAC 터미널에서 쉘 스크립트를 실행하려고합니다. 실행중인 프로그램과 별도로 스크립트를 실행할 새 터미널 창을 열고 싶습니다. Fedora에는 다른 터미널 쉘에서 스크립트를 실행할 수있는 gnome-terminal 명령이 있습니다.Mac : 쉘 스크립트의 gnome-terminal equivalent

누구나 MAX OSX에 상응하는 기능을 어떻게 알고 있습니까?

예를 들어, 스크립트 crazy.sh가 있는데이 프로그램을 현재 실행중인 프로그램에서 실행하고 있지만 별도의 터미널에서 실행하고 싶습니다. 그것을 할 수

+1

Mac에서는 쉽지 않습니다. 쉘 스크립트의 결과를 원하십니까? 그렇다면'popen()'을 사용하십시오. 'system()'을 사용하지 않는다면. – trojanfoe

+0

아니요, 스크립트의 출력에는 신경 쓰지 않습니다. 그냥 실행해야합니다. 그러나 시스템은 동일한 프로세스 내에서이를 호출하고 출력을 동일한 터미널 창에 출력합니다. 이는 원하지 않는 것입니다. 홍수로 홍수가 난다. – Edwin

답변

2

한 가지 방법은 터미널 창 대신 xterm 등을 사용하는 것입니다 : 당신이 xterm이 스크립트를 완료 한 후 영업을 할 경우, xterm 등의 -hold 옵션을 사용

xterm -e crazy.sh 

. 당신이 정말로 터미널에서이 작업을 수행해야하는 경우


그러나, 당신은 AppleScript로 함께 할 수

tell application "Terminal" 
    activate 
    tell application "System Events" to keystroke "n" using command down 
    repeat while contents of selected tab of window 1 starts with linefeed 
     delay 0.1 
    end repeat 
    do script "crazy.sh" in window 1 -- make sure the path to your script is right 
end tell 

(신용 대답 여기 https://superuser.com/questions/466619/open-new-terminal-tab-and-execute-script)

4

을 내가 DigitalTrauma의 답변을 좋아하지만 내 사용을 위해 발견,이 더 효과적 일

open -a Terminal.app crazy.sh 

고마워 답변.