Я ищу способ отправить выполненную команду на терминал TTY. Например, допустим, я открываю gnome-терминал и в окне набираю текст sudo aptitude update && sudo aptitude upgrade
.
Как я могу отправить это на терминал TTY вместо работы с ним в среде графического интерфейса TTY7?
command-line
tty
Луис Альварадо
источник
источник
Это программа, которая поможет:
Скопируйте приведенный выше код в некоторый C-файл (например, ttyecho.c). Выполните следующую команду в каталоге, в котором вы создали файл C, для компиляции кода.
Скопируйте этот файл в каталог bin под вашей домашней директорией. Создайте каталог, если он не существует. Рекомендуется хранить все пользовательские двоичные файлы / исполняемые файлы в этом каталоге bin.
Запустите другой терминал или переключитесь на любой другой открытый терминал, которым вы хотите управлять, и выполните команду tty. Вы можете увидеть пример вывода ниже.
Теперь, чтобы выполнить команду в / dev / pts / 5 , выполните следующую команду в управляющем / исходном терминале.
Вы увидите, что команда ls выполняется в / dev / pts / 5 . Опция -n заставляет ttyecho отправлять новую строку после команды, чтобы команда выполнялась, а не просто вставлялась. Эта утилита может быть использована для отправки любых данных на другие терминалы. Например, вы можете открыть vim в / dev / pts / 5 и затем запустить следующую команду в управляющем терминале, чтобы заставить vim выйти из / dev / pts / 5 .
Чтобы избежать постоянного использования sudo, чтобы команда легко создавалась в сценарии, измените владельцев / разрешения этого исполняемого файла с помощью следующих команд.
NB. Установка бита setuid может стать угрозой безопасности.
Источник: http://www.humbug.in/2010/utility-to-send-commands-or-data-to-other-terminals-ttypts/
источник