2

Я работал над этой "приборной панелью", чтобы помочь контролировать мою локальную серверную среду. Это было написано в bin/bash для справки. Недавно я обнаружил, что могу использовать команду bin "osascript", чтобы выполнить команду "AppleScript" через терминал, и сейчас играю с этим, чтобы включить в свою панель управления. Таким образом, я могу выполнять команды и управлять своим локальным сервером через одно окно, в то время как в фоновом режиме он может открывать отдельные задачи, не мешая главному окну.

Вот мой основной вопрос, касающийся этой концепции. Я заметил, что при выполнении команды osascript она возвращает следующую информацию: вкладка 1 окна id 11148.

Это оператор bash из моего скрипта .sh:

osascript -e "tell application \"Terminal\" to do script \"cd $devFolder;svn up\""

И это вывод, который я вижу в моем терминале:

tab 1 of window id 11197

Первоначально, я хотел, чтобы он просто открыл новую вкладку, но у меня все в порядке, когда он открывает окно, чтобы просто заставить его работать. Так что, как говорится в моем вопросе, возможно ли каким-то образом сохранить или получить идентификатор окна только что созданного окна терминала? Позволяет мне взаимодействовать с этим конкретным окном и управлять им?

2 ответа2

0

Из редактора AppleScript:

tell application "Terminal"
    set windowInfo to do script "echo \"hi user273298\""
    do script "echo \"hi adayzdone\"" in windowInfo
end tell

РЕДАКТИРОВАТЬ

osascript -e '
tell application "Terminal"
    set windowInfo to do script "echo \"hi user273298\""
    do script "echo \"hi adayzdone\"" in windowInfo
end tell
'
0

Добавьте идентификатор вкладки и окна как спецификатор in :

tab=$(osascript -e 'tell app "Terminal" to do script "uptime"');osascript -e 'tell app "Terminal" to do script "uptime" in '"$tab"

Вы также можете использовать in window 1 для запуска команды в существующем окне:

osascript -e 'tell app "Terminal" to do script "uptime"';osascript -e 'tell app "Terminal" to do script "uptime" in window 1'

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .