Usando nohup no Ubuntu - como fazer com que não mostre o número do trabalho?

0

Estou executando este comando:

$ nohup command > foo.out 2> foo.err < /dev/null &

Meu problema é que, mesmo que nohup faça meu comando rodar em segundo plano, ele imprime algo assim no terminal:

[1] 27918

Como faço para não dar saída ao número do trabalho? Eu só quero fazer isso em segundo plano sem me dizer nada. No Mac OS X, é exatamente isso que acontece, então estou um pouco irritado por ele funcionar de forma diferente no Ubuntu ...

Obrigado pela ajuda!

    
por hora 01.03.2011 / 09:45

3 respostas

4

As informações do trabalho são exibidas pelo seu shell, não nohup .

Você pode tentar esta alternativa:

(yourcommand&)

( gera um subshell, que lida com o controle de tarefas de maneira diferente.

(Eu tenho nh() { ("$@" &); } no meu ~ / .bashrc, então eu posso digitar nh command para fazer a mesma coisa.)

Outra maneira diferente:

setsid yourcommand

Edit: Parece que (setsid yourcommand &) é a melhor combinação, já que ele se separa do tty e funciona igualmente nos modos interativo e de script.

    
por 01.03.2011 / 10:02
1

O [1] 27918 vem do & não o nohup.

Coloque o comando que você deseja executar em segundo plano dentro de um arquivo de script:

#!/bin/sh
/path/to/command & >/dev/null 2>/dev/null

e depois chama isso com nohup

nohup sh /path/to/my/script > foo.out 2> foo.err < /dev/null

A saída de & é então redirecionado para / dev / null dentro do script.

    
por 01.03.2011 / 09:53
1

Assim como o mencionado acima (Obrigado, a propósito).

Dentro de um script chamado test.ksh:

#!/bin/ksh
./test2.ksh >/dev/null
nohup ksh test2.ksh < /dev/null
echo  "whatever"

Onde test2.ksh é outro script (ou pode ser um comando):

#!/bin/ksh
max=10
for ((i=2; i<=$max; ++i )) ; do
    echo -e "\n Hello world "
done

Em seguida, execute:

~> ksh test.ksh

e a saída é:

nohup: appending output to 'nohup.out'
whatever
~>

Funcionou para mim

Se você mantiver o & no redirecionamento

./test2.ksh & >/dev/null

Ele irá imprimir tanto no tty quanto no arquivo .out

    
por 28.01.2014 / 00:58