Como abrir um terminal sem bash ou quaisquer outros processos em execução

2

1) Eu quero abrir um terminal para entrada / saída de diferentes processos que já estão em execução. Quando eu abro um novo terminal, o bash é executado automaticamente e não consigo obter o terminal stdin, já que ele já é usado pelo bash. Eu quero executar uma janela de terminal, sem executáveis vinculados a ele.

2) Se eu estiver conectando por meio do SSH, como posso obter o mesmo comportamento para uma nova conexão? ou seja, ter um terminal remoto sem executar bash?

Executando o Ubuntu.

    
por AndresR 05.12.2016 / 22:27

2 respostas

1

Abra o terminal com um programa que fica lá sem fazer nada. Na verdade, você não precisa ter nenhum programa em execução em um terminal, exceto que a maioria dos emuladores de terminal executa um programa conectado ao lado do aplicativo do terminal quando eles são iniciados e encerra o terminal quando esse programa é encerrado.

Não há comando para não fazer nada para sempre até ser morto por um sinal na suíte de ferramentas padrão do Unix, mas sleep 999999999 chega perto o suficiente.

xterm -e sleep 999999999
ssh -tt host.example.com sleep 999999999

Você pode querer denunciar o dispositivo terminal em algum lugar.

tty=$(xterm -e sh -c 'tty >&3; exec sleep 999999999' 3>&1)
    
por 06.12.2016 / 01:05
0

A maioria dos processos, se não associados a um terminal, terão seus stdin / stdout / stderr apontando para algum outro lugar no sistema de arquivos ou para / dev / null.

Não tenho certeza do que você está procurando.

Anexar a outros processos pode ser feito com um depurador. Você teria que ser um usuário root.

Você pode executar um comando como este para ver para onde eles apontam:

 find /proc -name 0 -o -name 1 -o -name 2 | xargs ls -ld

Se você simplesmente quiser ser capaz de voltar a anexar a programas que você possui e ver sua saída, você pode primeiro iniciá-los a partir de um programa chamado screen , que inicia uma sessão na qual você pode iniciar múltiplas janelas de terminal e execute seu programa, se você for desconectado, e volte a conectá-los mais tarde.

    
por 05.12.2016 / 23:28

Tags