Как я могу определить текущий эмулятор терминала из bash-скрипта? - PullRequest
5 голосов
/ 13 августа 2011

У меня есть скрипт, который откроет новую вкладку в приложении OS X Terminal, и я пытаюсь добавить поддержку iTerm2.К сожалению, способы открытия вкладок в двух терминальных эмуляторах различны.

Как я могу определить, какой из двух используется или открыт для условного запуска правильного сценария?

Ответы [ 3 ]

7 голосов
/ 14 августа 2011

Я не уверен, как отличить iTerm от iTerm2, но проверь envar $TERM_PROGRAM. Для меня (Mac OS X 10.7) он возвращает Apple_Terminal для Terminal.app и iTerm.app для iTerm2.

0 голосов
/ 18 июня 2018

Я понимаю, это звучит саркастично, хотя почему они не назвали функцию "x-Terminal-Emulator" по-разному "fly-little-birdy"?

Я использую Linux. Когда я выполняю вызов функции «x-терминал-эмулятор» в bash, этот терминал исчезает и становится недоступным для моих сценариев.

Суть в том, что bash нужны дополнительные функции для полной функциональности и полезности. Функция "x-терминал-эмулятор -attach-to-pid = TERMINAL_NAME" будет в порядке.

Я думаю, что это упущение в функциональности и полезности. Они могли бы это исправить. : /

0 голосов
/ 13 августа 2011

Вы должны быть в состоянии:

ps -p $$ | tail -1 | awk '{print $NF}'
...