Windows: stdout ve stderror komutunu hiçbir şeye yönlendirmez


33

Çalıştırdığım bir komut çıktı ton üretiyor, çıktıyı bir dosyaya yazmadan susturmak istiyorum. Tüm çıktıları bir dosyaya göndermek için aşağıdakileri kullandım, ancak yine de herhangi bir dosya çıktısı istemiyorum:

command > out.txt 2>&1

command > /dev/nullCentOS kutumda daha önce kullanmıştım , ancak pencereler için benzer bir şey bulamıyorum.


Umarım command > /dev/nullCentOS'unuzu kullanmışsınızdır .
Kurt Pfeifle

@pipitas ne yaptıysam çalıştı: D
Alec Gorge

Gerçekten de command > /bin/nullCentOS'ta kullandıysanız , /bin/nullsisteminizde adlandırılmış ortak bir dosya oluşturdunuz . 'İşe yaradı!' Diyebilirsiniz . , Eğer istersen. Bu dosya şimdi stdout ve stderr çıktınızı içeriyor command. Genellikle içinde /bin/sadece çalıştırılabilir dosyalar bulunur. Ve genellikle, yalnızca kök kullanıcının orada dosya oluşturmasına izin verilir. Bu dosya var Yani, sen ... kök kullanıcı olarak komutunu çalıştırın vermedi /bin/nullve - genellikle mevcut değil /dev/nullgenellikle olarak kullanılır (bahsettiğim olan) 'siyah bütün' istenmeyen çıkışı ortadan gereken yerde ...
Kurt Pfeifle

İyi nokta, bunu düşünmemiştim. Ancak, o zamanlar Windows üzerinde olduğum için sadece hatalı hafızam olduğundan eminim.
Alec Gorge

Yanıtlar:


47

Sen istiyorsun command > nul 2>&1.


Teşekkürler! bu çalışır. Yanıtı kabul etmek için 12 dakika beklemem gerekiyor (sunucu hatası gereksinimi)!
Alec Gorge

7
Bu sadece stdout'u yönlendirir. Ayrıca ihtiyaç > nul 2>&1veya 2> nulstderr'yi öldürmek.
yerçekimi,

Evet bunu biliyorum, ama bu soruyu ziyaret eden diğerlerine de bahsettiğiniz için teşekkür ederiz!
Alec Gorge

kullanırken sadece eklemek, ben izin reddedildi hatası başlamıştı: sudo anabilgisayaradı -f 2> nul Aşağıdaki komut çalıştı oysa iyi: sudo anabilgisayaradı -f 2> / dev / null nul kullanırken izin sorunu haline tükendi olanlar için
Ranvir

1
@AminM nul, boş bir çıktı için Windows'un özel anahtar sözcüğüdür (örneğin, çıktıyı atın). On * nix tabanlı sistemler (Ranvir'in bahsettiği gibi) bunun yerine özel dosyayı kullanırlar /dev/null. >Aracı "yönlendirme" (ve 2>- hata çıkışı olan araçlar tampon 2 yönlendirme)
Doktor J

3

İstediğiniz command > null 2>&1

nulyalnızca nullpowershell'de çalışırken komut isteminde çalışır

Null, uyumluluk için ve cmd.exe dosyasında kullanılabilir ancak null adlı bir dosya oluşturur.


3
Komut İstemi cmd.exe'dir. '> null' cmd.exe ve PowerShell'den yönlendirdiğiniz her şeyle 'null' adlı bir dosya oluşturur.
Bay Smythe

Hiç bir fikrim yoktu. Cevabımı usulüne uygun olarak düzenledi.
AirCombat
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.