Я хочу запустить команду foo на одном терминале и передать результат на другой терминал. Возможно ли это сделать?
Да, это так. Картинка, стоящая тысячи слов:
Итак, вы должны перенаправить вывод вашей команды с помощью оператора >
на / dev / pts / #
. Вы можете найти #
, используя команду who
или w
. Если вы хотите перенаправить и ошибки, используйте:
<command> >& /dev/pts/#
Что-то вроде этого для вашего $ HOME / .bashrc
:
ng() { gnome-terminal -x sh -c "$*; bash"; }
Это запустит команду и показывает результат в новом окне терминала.
Примеры:
ng ls -l
ng echo foo
Редактировать: Чтобы рассмотреть псевдонимы из $ HOME / .bashrc
, используйте вместо этого:
ng() { gnome-terminal -x bash -ic "$*; bash"; }
затем вывод ls
должен быть раскрашен (спасибо Radu Rădeanu за эту подсказку ).