Resposta curta
No terminal que não responde:
- Pressione Ctrl+ Z.
- Digite
bg
e digite.
- Digite
disown
e digite.
Resposta longa
No terminal que não responde, pressione Ctrl+ Z, isso "pausará" o processo (ou "trabalho") e retornará o controle do console para você. No entanto, você notará que ele gedit
não responde e não pode usá-lo.
Extra : se você quiser, pode executar o comando jobs
, notará que ele lerá Parado para o gedit
comando, é por isso que você não pode usá-lo.
Para fazer com que o trabalho seja executado com êxito em segundo plano (ou seja, para gedit
responder novamente), execute o comando bg
(ou seja, em segundo plano). Agora você será capaz de usar gedit
e, ao mesmo tempo, terá o prompt para si mesmo.
Extra : agora, se você executar jobs
, notará que será exibido Executando .
Você pode superar tudo isso desde o início. Ao iniciar a gedit
partir do terminal, adicione um &
no final do comando, para algo assim gedit /path/to/file &
. Isso será iniciado gedit
em segundo plano desde o primeiro lugar (talvez você precise pressionar Enteralgumas vezes para recuperar o controle do console).
Extra : se você estava seguindo essas notas extras, talvez tenha notado que, na segunda vez jobs
, viu que o bash adicionou &
a ao final do gedit
comando.
Depois de se acostumar com esse sistema, você pode perceber que, se você fechar o terminal, o gedit também será encerrado, sem sequer um diálogo de confirmação. Para impedir que isso aconteça, execute disown
, o que desanexará o processo gedit do terminal, removendo-o da lista retornada por jobs
.
Basta digitar:
gedit <filename-to-edit> &
Isso retornará imediatamente o prompt de comando para você.
fonte
Você pode usar o
nohup
para impedir que a GUI seja conectada a um terminal:Isso permitirá que você feche o terminal do qual está iniciando, sem que o programa seja fechado.
Você também deve observar que o comando nohup criará um arquivo com o
stdout
estderr
do comando que você executa. Se você deseja impedir isso, adicione&>/dev/null
antes do&
.fonte
nohup.out
contém a saída do comando. Isso é útil se você deseja visualizar as mensagens de erro. Se você não deseja que o arquivo a ser criado, o redirecionamento add da seguinte forma:nohup mupdf some.pdf &>/dev/null &
Você também pode usar o
disown
comando É particularmente útil quando você já iniciou o processo que não deseja mais anexar ao terminal.O procedimento básico, se bem me lembro, é algo como isto:
Observe que o repúdio é
bash
específico.Esta postagem no blog explica muito bem os dois métodos.
Página de manual por renúncia
fonte
firefox & disown
De
man gedit
:Portanto, se você executar
gedit
com a-b
opção, ela começará em segundo plano:Além disso, em seguida, você pode criar um alias para
gedit -b
(veja aqui como criar um alias permanente):A partir de agora, no futuro você poderá usá-
gedit [FILE-NAME]
lo normalmente e ele começará em segundo plano.fonte
Basta digitar:
Terminar um comando com
&
no bash executa esse comando em segundo plano. No entanto, esse processo ainda está anexado ao terminal.SemAcontece que eu estava errado, esse não é o caso do bash, mas é o caso do zsh. Você ainda precisa correrdisown
, se você fechar o terminal, o gedit será fechado, sem solicitar que você salve um arquivo editado.disown
desanexa o processo em segundo plano do terminal atual, de modo que, se você fechar o terminal, o gedit continuará funcionando normalmente.detach
depois de fazer ctrl- zebg
, no entanto, mesmo no bash.Você pode descobrir mais sobre os built-ins
jobs
,disown
e o&
metacharacter na página de manual para obash
comando , especialmente a seção chamada "controle de trabalho".fonte
disown
eu era capaz de manter o gedit aberto após o terminal ser fechado. Eu não consegui o que você disse sobre "este não é o caso para a festança, mas é o caso para zsh"Provavelmente é porque você abriu o gedit via terminal. Ao fazer isso, você vê a saída da linha de comando que normalmente fica oculta se iniciada pela GUI. A melhor maneira de corrigir isso é abrir uma nova janela do terminal. O outro ficará disponível após o fechamento do gedit. Você também pode usar a opção sugerida pelo usuário acima.
fonte