터미널 창을 통과하는 Handler를 만드는 작업은 스크립트의 ID를 호출하여 혼합 된 결과를 얻었습니다. 더 깨끗한 방법이 있다면 궁금합니다. window 1
핸들러 :
on termHandler()
set activeTerminal to ""
if application "Terminal" is running then
tell application "Terminal"
if not (exists window 1) and not busy of window 1 then
activate
tell application "Terminal" to do script "echo snow" in window 1
else
tell application "Terminal" to do script "date" in window 1
set activeTerminal to window 1
return activeTerminal
end if
do script "echo foo"
activate
set activeTerminal to window 1
return activeTerminal
end tell
else
tell application "Terminal"
activate
do script "echo bar" in window 1
set activeTerminal to window 1
return activeTerminal
end tell
end if
end termHandler
내가 읽고 읽은 모든 것 :
- Applescript는 현재 공간에서 새로운 터미널 창을 엽니 다.
- AppleScript를 통해 터미널 열기
- AppleScript로 특정 터미널 스타일 윈도우 열기
- 스크립트가 두 개의 터미널 창을 엽니 다.
- Applescript로 Terminal.app에 명령과 문자열 보내기
AppleScript와 터미널이 잘 맞지 않는다고 제안합니다. 현재 사용중인 OS는 Sierra입니다.이 글은 쓰고 있지만 다른 스크립트는 Yosemite를 사용하여이 스크립트를 사용합니다. 나의 최종 목표는 특정 공간에서 터미널 창을 식별하고 일부를 시작하는 것입니다. do script
하지만 그렇게하는 데 문제가있는 것 같습니다. 터미널이 실행되고 있는지 확인하고, 새 창을 만들지 않고, 실행중인 경우 window 1
변수로 전달할 수 있습니다. do script
?
프로그래밍 방식으로 단말기 도크 타일 ~에 독 , 또는 사용 시스템 이벤트 에 ⌘N 또는 말하다 단말기 에
—
user3439894
reopen
그러고 나서 window 1
이 시나리오에 존재합니다. 생각할 점이 몇 가지 있습니다.
왜 그걸 대답으로 남겨 두지 않겠습니까? 실수가 있다면 나는 최종 목표에 대한보다 나은 접근 방법입니다.
—
ʀ2ᴅ2
내가 Spaces를 가지고있는 이슈들을 다루지 않기 때문에 대답으로 게시하지 않았다.
—
user3439894
window
, 그 다음에if not (exists window 1) and not busy of window 1 then
실패 할 것이고 당신은 오류 처리기 그 시나리오를 위해. 내가 보는 또 다른 문제는 단말기 ~이다. 열다 그리고없이window
, 그 다음에activate
가져다 준다 단말기 앞으로 나아가지만 새로운 것은 만들지 않는다.window
. 다음 댓글에서 계속 ...