Escreva o comando em um terminal, veja o resultado em outro

35

Eu quero executar um comando foo em um terminal e passar o resultado para outro terminal. É possível fazer isso?

    
por Mohammad Reza Rezwani 12.07.2014 / 18:47

2 respostas

46

Sim, é. Uma imagem vale mais que mil palavras:

Portanto, você precisa redirecionar a saída do seu comando usando o operador > para /dev/pts/# . Você pode encontrar o comando # using who or w . Se você quiser redirecionar e os erros, use:

<command> >& /dev/pts/#
    
por Radu Rădeanu 12.07.2014 / 19:01
8

Algo parecido com isto para o seu $HOME/.bashrc :

ng() { gnome-terminal -x sh -c "$*; bash"; }

Isso executará um comando e mostrará o resultado em uma nova janela de terminal.

Exemplos:

ng ls -l
ng echo foo

Editar: para considerar aliases do $HOME/.bashrc use isso:

ng() { gnome-terminal -x bash -ic "$*; bash"; }

então a saída de ls deve ser colorida (graças a Radu Rădeanu por essa dica ).

    
por TuKsn 12.07.2014 / 19:38