Digamos que eu desinstalado acidentalmente cada emulador de terminal no meu sistema: xterm
, uxterm
, gnome-terminal
, guake
, etc. Existe uma maneira que eu possa acessar bash
sem um emulador de terminal?
Uma maneira possível de pensar seria criar e executar um script de shell, mas, além disso, posso obter um shell interativo?
Isso é puramente hipotético, mas obrigado por todas as respostas!
command-line
bash
Huey
fonte
fonte
Respostas:
Sim, pressionando CtrlAltF21 . Isso fornece acesso ao console virtual TTY2. E você pode reinstalar qualquer emulador de terminal de lá com
sudo apt-get install terminal-name
, onde terminal-name é,gnome-terminal
por exemplo.Para voltar à GUI, primeiro digite o
exit
logout do console virtual e pressione CtrlAltF7para voltar à GUI. (Caso deseje manter a sessão TTY aberta, pule aexit
parte de digitação )Edição: junho 17,2015
Pensei em outra solução: se você tiver algum IDE em linguagem C, poderá compilar o código a seguir e o console do IDE agora dará acesso ao bash
Nota: CtrlAltF2 não é a única opção. Você pode usar CtrlAltF1, CtrlAltF3, CtrlAltF4, CtrlAltF5e CtrlAltF6também, o que lhe dará virtual tty1 console, tty3, tty4, TTY5 ou tty6 respectivamente.
fonte
xinit
oustartx
realmente entrava no X11, se precisasse executar um programa GUI por algum motivo. :)Se você tiver um servidor ssh em execução, poderá se conectar via ssh a partir de outro sistema.
Se eu instalar um sistema, primeiro instalo e inicio o servidor SSH. Um tipo de seguro de vida. =)
fonte
Ctrl+ Alt+ ( F1por F4pelo menos, talvez até F6) executar uma interface de terminal nos consoles virtuais. Uma vez lá, para voltar à GUI, use Ctrl+ Alt+F7 .
Se você fizer alguma dessas opções, poderá acessar um terminal no qual possa fazer login e acessar o terminal. Porém, os scripts bash continuarão em execução, se forem scripts automatizados inseridos
cron
e assim ou clicados duas vezes para executar (mas não no terminal). Os emuladores de terminal que 'fornecem' um shell interativo, masbash
, finalmentezsh
, etc., que são os shells reais, ainda existem e podem ser executados viacron
scripts e até dos consoles virtuais nos combos de teclado acima.Observe que, se seus scripts precisarem da interface interativa, você precisará usar os consoles virtuais ou instalar um emulador novamente.
fonte
Se esta é uma pergunta de um teste, para completar, eu adicionaria tty serial normal, onde você se conectaria ao seu computador com um cabo serial. você precisaria de um getty (ou qualquer tty ouvintes seriais agora chamados) configurado anteriormente antes de perder o terminal, e de um segundo computador para conversar com o primeiro, portanto, como uma emergência em casa, é improvável que isso aconteça .
Você também pode ter algum console webmin que ofereça (com efeito) acesso ao shell, embora não seja tecnicamente interativo. Nesse ponto, é melhor executar comandos fáceis, como o apt-get some-terminal-emulator.
Se você tiver uma janela do navegador aberta, você poderia, em teoria, procurar um emulador de terminal java, mas meu palpite é que você precisará instalar com antecedência e apenas ter uma janela do navegador não permitirá que você acesse o arquivo subjacente, mas não tenho tempo para testar de qualquer maneira.
portanto, as perguntas acima são "de todas as formas possíveis", não necessariamente úteis na vida real para uso doméstico, embora a maioria das salas de servidores provavelmente tenha acesso serial.
hmm, muitas outras ferramentas (emacs, vim, etc) permitem algum nível de descasque. vamos esperar que você tenha o xemacs aberto
fonte
ESC :shell
; enquanto geany tem um "Widget virtual emulador de terminal (TEV)" em uma guia do painel de mensagens, desde quelibvte.so
está disponívelEmbora todas as respostas acima sejam perfeitas, e como você usa o Linux, você tem muitas outras soluções possíveis:
fonte
Então, eu vou ser pedante aqui:
Certamente, qualquer script que comece com
#!/bin/bash
fará isso.Existe uma maneira de obter um prompt do bash sem um emulador de terminal?
Continuando com o meu tema de ser pedante, vamos fazer alguns buracos em algumas das outras respostas.
Isso é realmente muito difícil de fazer, porque
você alterna para outro console virtual que possui o emulador de terminal virtual do kernel do linux em execução, o que é muito difícil de remover e requer a recompilação do kernel com opções fora do padrão. Então, vamos fazer furos nas opções ssh / telnet / porta serial, que requerem um emulador de terminal remoto; quanto ao webmin, ele também possui um emulador de terminal (apenas um péssimo).
Há apenas uma maneira de usar a função de um terminal sem um emulador de terminal: use um terminal real. Eu costumava ter um Televideo e um teletipo (não um TeleType, isso era uma imitação). Eu era capaz de editar arquivos com ambos (vi no Televideo, ed no teletipo (que dor na parte traseira)) fazem chamadas para um especialista local usando minicom e seyon do televideo. Você sabe que a única coisa que sinto falta deles são os direitos de se gabar, mas eu peguei alguns terminais de configuração para impressoras industriais que têm uma tela de duas linhas com 20 colunas, um teclado e uma interface rs232 que trabalharão para o reparo de configurações de emergência assim que eu descobrir onde está o meu manual de instruções.
fonte
Semelhante à resposta da @AB , se você tem um servidor web em execução (acredito que o Ubuntu padrão seja fornecido com o apache), você pode executar um shell no seu próprio navegador com algo como phpshell .
Pessoalmente, eu acabei de lançar o emacs e
M-x shell RETURN
.fonte
sudo apt-get install apache
. Oh espere.