Como obtenho nohup para executar comandos internos com [double-quote]?

1

Digamos que eu queira executar echo aninhado em watch aninhado em nohup .

Começando pela parte inferior da pilha:

echo test

Não há problemas com isso.

watch -n 1 'echo test'
watch -n 1 "echo test"

Nenhum problema com os outros.

nohup 'watch -n 1 "echo test"'
nohup "watch -n 1 'echo test'"

Problemas com esses:

~$ nohup 'watch -n 1 "echo test"'
~$ nohup: ignoring input and appending output to ‘nohup.out’
~$ nohup: failed to run command ‘watch -n 1 "echo test"’: No such file or directory
~$ nohup "watch -n 1 'echo test'"
~$ nohup: ignoring input and appending output to ‘nohup.out’
~$ nohup: failed to run command ‘watch -n 1 'echo test'’: No such file or directory

Como obtenho o nohup para executar comandos internos [com duplas] citações?

    
por kos 16.04.2015 / 13:31

1 resposta

4

nohup não está esperando nenhuma nenhuma cotação. Não sabe como lidar com eles.
O comando que você quer é simplesmente:

nohup watch -n 1 'echo test'

Nesse caso, você pode até mesmo ficar sem as aspas internas:

nohup watch -n 1 echo test

Apenas esteja consciente de como o nohup funciona. Ele redireciona todas as saídas de uma maneira bastante crua. Você não poderá monitorar a saída do relógio da mesma maneira.

    
por Oli 16.04.2015 / 13:37