Duplicata Possível:
Deixar script bash em execução no terminal remoto enquanto não estiver logado?
Eu tenho um script que roda Gaussian, uma calculadora de estrutura química, que gasta alguns dias brincando com uma molécula. Ele é executado em uma caixa do Linux que eu carrego os arquivos de entrada e disse script para, então eu (deveria) executá-lo, espere um pouco, espero que o programa não travasse e faça logon novamente para coletar o resultado.
Um novato * nx, mas não consigo descobrir como configurar o script em execução e desconectar, enquanto o deixo continuar.
./jobscript
parece bloquear até que seja feito, e se eu desligar ele termina
./jobscript &
não bloqueia, eu posso vê-lo rodando top
, então eu pensei que estava tudo bem, mas ao sair, aparentemente, o programa foi cancelado.
Como faço para definir a coisa para executar e ficar em execução, mesmo se eu sair?
screen
é melhor para mim enquanto tropeço em um novo mundo; é bastante óbvio quando executo um script (bloqueio) e ele morre devido a algum erro de sintaxe ou entrada malformada conforme retorna imediatamente.Você pode usar:
fonte
Você poderia começar um tela sessão, inicie seu trabalho e desconecte-se da sessão de tela.
Mais tarde, você poderá anexar novamente à sua sessão de tela para ver se o seu trabalho foi concluído.
Veja também https://serverfault.com/questions/2016/on-a-linux-server-how-do-you-use-multiple-terminals-over-a-single-ssh-connection/2027#2027
fonte
nohup
fonte
Com bash:
Altere o número do seu número de trabalho real (consulte
jobs
embutido também)fonte