2013-07-20 3 views
0

Я выполняю команду bash от AppleScript, но сценарий довольно уродлив, и мне интересно только видеть вывод в терминале.скрыть вход bash в терминале

Пример:

tell application "Terminal" 
    do script "pwd" 
end tell 

Терминал (я хочу, чтобы скрыть PWD):

pwd 
/Users/jdoe 

ответ

2

Если вы используете clear (или tput clear или printf \\ec), старое содержимое отображается при прокрутке вверх:

tell application "Terminal" 
    do script " clear; pwd" 
    activate 
end tell 

Это может иметь заметную задержку, если системные события не работают:

tell application "Terminal" 
    do script " osascript -e 'tell app \"system events\" to keystroke \"k\" using command down'; pwd" 
    activate 
end tell 
1

Команда do shell script "pwd", и это было показать только выход, когда я запустил его в редакторе сценариев или с помощью osascript test.scpt в терминале.

+0

Я обновил свой пример, вместо «pwd» есть интерактивный скрипт, и «do script» выполняет его через терминал. – Scientist1642

+0

Почему вы столкнулись с проблемой запуска терминала вместо простого запуска 'make shell script'? –

+0

Поскольку я хочу, чтобы пользователь взаимодействовал с ним в терминале, сценарий оболочки выполнил его в фоновом режиме. – Scientist1642

Смежные вопросы