ben yaparsanız Bir boruda nohup çalışıyor mu?
nohup cmd1 | cmd2 &
olduğunu aynı
nohup "cmd1 | cmd2" &
olarak?
ben cmd1
olarak nohup
her şey, bağlantı noktasında dinleme edeceğini istiyoruz 8023.
ben yaparsanız Bir boruda nohup çalışıyor mu?
nohup cmd1 | cmd2 &
olduğunu aynı
nohup "cmd1 | cmd2" &
olarak?
ben cmd1
olarak nohup
her şey, bağlantı noktasında dinleme edeceğini istiyoruz 8023.
Hayır, ayrı ayrı komutlara nohup eklemeniz gerekir. Böyle
şey önerilir:
nohup sh -c "cmd1 | cmd2" &
Veya alternatif:
nohup $SHELL <<EOF &
cmd1 | cmd2
EOF
nohup cmd1 | cmd2 &
nohup: ignoring input and redirecting stderr to stdout
Bağlantı öldü. –
@JasmineLognnes bağlantısı, cevabımla birlikte gönderilen aynı hata mesajını içerir. – Skynet
Farklı şöyle şudur Hayır, sadece şu an kontrol ettikten'e bir alternatif, ben terminalden Stdin, stdout'u ve Sterr yeniden yönlendirme ile
(cmd1 | cmd2) > logfile < /dev/null 2>&1 &
tavsiye şu kadarını, en azından, tercih bir söz dizimi ile nohup aynı etkiye.
Bu, "nohup" gibi HUP sinyalinden gelen komutu korumaz. Bunu yapmak için '(trap" HUP; cmd1 | cmd2) logfile 2> & 1 & ''ye ihtiyacınız var. –
Doğru, ancak yazıldıkça, kapanış terminalinin HUP'u sürece ilk etapta göndermesini önler. –
Birisi, 'SHELL' nedir ve neden ihtiyacımız olduğunu açıklayabilir mi? –
'$ SHELL 'şu anda çalışan kabuğunuzu içerir, çoğu Linux sisteminde bu'/bin/bash' olacaktır, ancak '/ usr/bin/zsh' veya başka bir şey olabilir. '$ SHELL' değişkenini kullanmanın avantajı, bu şekilde komutun normal kabuk ayarlarınız kullanılarak yürütülmesidir. – Wolph
'EOF &' benim için çalışmıyor. – RoVo