Muitas vezes quando trabalhamos em um terminal queremos executar um comando, mas então poder fechar o terminal e que o que executamos NÃO feche, por exemplo, executar um script no terminal e então fechar o terminal, mas o script continua em execução ... como Para alcançar isto?
Para fazer isso, basta colocar um & no final da linha, por exemplo, temos um script chamado wifi-log.sh e para executá-lo e mantê-lo em segundo plano seria:
./wifi-log.sh &
Veja aqui uma imagem:
Aqui vemos claramente que, depois de executar a linha acima, nada mais aparece, exceto [1] 29675 O que isso significa?
29675 é o PID (número do processo) do script que executamos, ou seja, se quisermos matar o script e parar de executá-lo, basta colocar:
mata 29675
E pronto, ele parou de funcionar.
Quero dizer e Em suma, para enviar um processo (comando, vários comandos ou script) para o fundo (ou fundo) devemos colocar no final da linha & e depois pressionar Entrar
Isso não é uma novidade, longe disso mas ... é sempre bom ficar claro, também, esse post vai me servir para outro que vou publicar em breve.
Obrigado pela dica, pequenos detalhes que são muito úteis.
Fora do assunto: Boas festas a todos.
Obrigado também
Não faria mal falar sobre os comandos fg y bg; especialmente o último, para enviar processos para primeiro e / ou segundo plano.
Muito útil se nos esquecermos de incluir o & após os comandos 😉
Saudações compi
Você também deve falar sobre esperar para expandir um pouco mais o tópico, ele é usado em algumas ocasiões com $$ PID e $ PID ou disown por exemplo para alterar o shell de um processo:
sudo apt-get update &
[1] 3983
disown 3983
Em outra concha
sudo reptyr 3983
Saudações 😀
Obrigado pela informação 🙂
Muito útil obrigado, eu conhecia a tela para emular janelas e pude usá-la com rtorrent há muito tempo. Acrescento o tutorial que você usa na hora caso alguém se interesse.
http://tuxpepino.wordpress.com/2007/05/24/%C2%BFconocias-screen/
Saudações.
Também é muito conveniente usar o comando SCREEN, mas já é algo mais avançado.
Para quem tem tela muito avançada, experimente o byobu, é o que costumo utilizar e é muito confortável além de oferecer informações úteis na barra de status.
P.S. Minhas desculpas por escrever desde Linux (preguiça de não reiniciar depois de jogar GRID2)
Desculpe, eu quis dizer "por não escrever"
Você pode escrever de onde quiser, amigo, isso é respeitado aqui.
Qualquer Lapso da caneta perdoe, pois geralmente não é como Disqus.
Ö Eu sempre fiz isso → processo de nohup &
E se você já tiver um processo em execução e decidir movê-lo para o segundo plano?
Bem, Ctrl + z e fica parado, com jobs você pode ver qual número ele tem e com bg você coloca para rodar em backbround.
$mc
$ ctrl + z
$ empregos
[1] + Parado / usr / bin / mc -P "$ MC_PWD_FILE" "$ @"
bg 1
Estou atualizando o Archlinux e mudei para o plano 2 (pacman -Syu), com ctrl + z ele já informa o número que tem, agora se eu quiser que ele volte ao primeiro plano, que ordem é usada?, Ou você tem para encerrar o processo e executá-lo novamente.
com o comando `fg` 🙂
para ex
pacman -Syu
ctrl-z # para
bg # enviar para execução em segundo plano
fg # traz de volta para a frente 🙂
fg ou% para retornar aos processos que estão sendo executados em segundo plano:
$fg
$% 2
$fg3
Os amantes do terminal e da execução em segundo plano provavelmente acharão os seguintes artigos úteis:
https://blog.desdelinux.net/asignar-prioridad-a-comandos-ejecutados-desde-el-terminal/
https://blog.desdelinux.net/como-recibir-notificaciones-al-finalizar-la-ejecucion-de-un-comando-en-un-terminal/
https://blog.desdelinux.net/como-cerrar-un-terminal-sin-que-se-cierre-el-programa-ejecutado-desde-el-mismo/
Abraço! Paulo
Oi como você está?
Estou testando rodando o tar em background e ele acaba rodando primeiro.
Usando as linhas de comando tar cvf backup.tar / var &.
Se você pudesse me dar alguma ajuda. Já tentei canalizá-lo, com script e n entendi.