Você não precisa ficar com um único comando de cada vez. Se você deseja executar um processo em segundo plano e revisitá-lo ocasionalmente ou executar várias tarefas demoradas de uma só vez, o Linux oferece várias opções.
Consoles Virtuais
Por padrão, a maioria dos sistemas Linux possui vários consoles virtuais em execução em segundo plano. Alterne entre eles pressionando Ctrl-Alt e apertar uma chave entre F1 e F6. Ctrl-Alt-F7 geralmente o levará de volta ao servidor X gráfico.
Pressionar a combinação de teclas levará você a um prompt de login. Você pode efetuar login e executar um comando e, em seguida, alternar - o comando continuará sendo executado em segundo plano, para que você possa ter diversas sessões de terminal diferentes ao mesmo tempo.
Estas são apenas as configurações mais comuns - diferentes distribuições Linux podem ter menos consoles virtuais em execução e ter o servidor X localizado em um local diferente.
Bash Job Control
O shell Bash fornece seus próprios recursos para manipular vários processos. O controle de trabalho permite executar processos e anexar e desconectar-se deles. Um processo anexado é conhecido como um processo em primeiro plano, enquanto um processo destacado é conhecido como um processo em segundo plano.
Para iniciar um processo em segundo plano, adicione o & personagem após o seu comando. Por exemplo, para abrir o editor de texto Nano como uma tarefa em segundo plano, digite o seguinte comando:
nano &
Todo trabalho que começamos recebe seu próprio ID de trabalho. Execute o empregos comando para visualizar a lista de trabalhos em execução no momento. O sinal + indica o trabalho que foi associado pela última vez ao shell, enquanto o sinal - indica o trabalho que foi o penúltimo a ser associado ao shell.
o fg comando permite que você traga um trabalho em segundo plano para o primeiro plano, anexando-o ao shell atual. Executar fg ou outro comando relacionado ao trabalho sem especificar um trabalho usará o último trabalho associado - aquele com um sinal de + na lista de trabalhos. Você também pode especificar um número de trabalho. Por exemplo, o seguinte comando trará o job 1 de volta ao primeiro plano:
fg %1
Encerre um processo normalmente e ele desaparecerá da lista de tarefas em execução. Se você quiser desanexar um trabalho do shell atual, use o ^ Z - isso é, Ctrl-Z - atalho de teclado.
Tela GNU
O GNU Screen é um “gerenciador de janelas em tela cheia” que permite usar múltiplos shells em um único terminal. Pode não ser instalado por padrão - não está no Ubuntu. No Ubuntu ou Debian, use o seguinte comando para instalar o Screen:
sudo apt-get install screen
Depois de instalado, execute o tela comando e você verá algumas informações sobre a Tela.
Pode não parecer especial, mas este shell está sendo executado no GNU Screen. pressione Ctrl-a e depois d para separar da tela. Você voltará ao terminal normal.
Para recolocar a tela, execute o tela -r comando. Você voltará ao mesmo terminal de antes.
Há muito mais que você pode fazer com a tela. Por exemplo, crie uma nova “janela” (terminal) na tela pressionando Ctrl-a, então c. Depois de ter várias janelas, pressione Ctrl-a duas vezes para alternar entre eles. Você também pode pressionar Ctrl-a, então “ para ver uma lista de janelas.
Nós já escrevemos sobre o uso do GNU Screen e usamos o Byobu, que aprimora o GNU Screen.