Ask Ubuntu'da aşağıdakileri öneren bir cevap düzenledim
nohup gedit >& /dev/null &
Aslında demek istedikleri zaman
nohup gedit &> /dev/null &
İkincisi hem stderr hem de stdout'u doğru bir şekilde yönlendirir /dev/null
. Eski ya da adlandırılan bir dosya oluşturmak için bekliyordum, ya &
da daha büyük olasılıkla, diğer durumlarda olduğu gibi bir hata vermek için:
$ echo "foo" >&
bash: syntax error near unexpected token `newline'
Bunun yerine, öncekiyle aynı şekilde çalışıyor gibi görünüyor, bir gedit
pencere görünüyor ve hiçbir hata mesajı yazdırılmıyor.
Ayrıca bu kabuk özgü olduğunu unutmayın:
bash
(4.2.45 (1) -release),zsh
(5.0.2),csh
(deb paket sürümü: 20110502-2) vetcsh
(6.18.01): yukarıda açıklandığı gibi çalışır, hata mesajı yok, dosya oluşturulmadı.dash
(0.5.7-3):$ nohup gedit >& /dev/null & $ dash: 2: Syntax error: Bad fd number
ksh
(93u + 2012-08-01): başarısız oluyor, ancak1223
hiçbirgedit
pencere görünmese de bir işlem açıkça başlatıldı ( ) :$ nohup gedit >& /dev/null & [1] 1223 $ ksh: /dev/null: bad file unit number
fish
(2.0.0):> nohup gedit >& /dev/null & fish: Requested redirection to something that is not a file descriptor /dev/null nohup gedit >& /dev/null & ^
Peki, bu komut neden bazı kabuklarda hatasız (ve çıktı dosyası oluşturulmamış) çalışıyor ve bazılarında başarısız oluyor? >&
Görünüşe göre özel durumda ne yapıyor nohup
? Sanırım bu >& /dev/null
olarak yorumlanıyor >&/dev/null
ama alan neden bu kabuklarda hataya neden olmuyor?
nohup command
Benim bellek, çalıştırmak bağımsız tty sizin application.According dash
genişletilmiş ash
, Debian ash
, ash
tarafından geliştirilen OpenBSD
ve sınırlı kabuk, hatta Maemo OS çizgi kullanır (n900 cep üzerinde Debian Base) var, ash
aile kabuk sınırlı kullanım Bash veya tcsh beklediğiniz var.
dash
yazdırmamı nasıl sağlayacağımı anlayamıyorum, ancak paket 0.5.7-3
nedir? Ayrıca koştuğunuzdan emin misiniz dash
? Bu Ubuntu'nun varsayılanı sh
değil mi?
nohup
, sorum şu anda neden >&
bazı kabuklarda nohup ile çalışıyor gibi görünüyor.
dash
.