'2> & 1' ve '/ dev / null' nedir


1

Senaryolar arasında dolaşıyor 2>&1ve /dev/nullher yerde görüyorum . Onlar neler? Google’dan sonra, OS X’te Linux’tan farklı mı?

Yanıtlar:


2

Unix süreçler yararlanabilir üç 'standart dosya akışları' vardır - stdin, stdoutve stderr- stdingenellikle klavyeden girdi okur ve stdoutve stderrgenellikle Terminal penceresine gidin. stderrdosya tanımlayıcı numarasını 2alır ve stdout dosya tanımlayıcı numarasını alır 1. 2>&1"tüm çıktıyı stderr'e stdout'un gittiği yere yönlendirmek" anlamına gelir. /dev/nullkarakter bir cihazdır - basitçe kendisine yazılmış herhangi bir şeyi atar.

Her yerde bir komut dosyası çıktısını depolamak istemiyoruz ve size terminalde görmek istemiyorsanız, size yönlendirebilir stderraynı yere stdoutsahip 2>&1ve sonra yeniden yönlendirmek stdoutiçin /dev/nullbirlikte> /dev/null

Yalnızca yönlendirmek olsaydı stdoutile > /dev/null, yine terminalde hataları görecekti.


1

2>&1 Tüm çıktıyı dosya gibi belirtilen hedefe yönlendirmek için komut dosyasını çalıştıran kabuğun bilgisi veya /dev/null

/devLinux sistemlerinde yer cihazlara erişimi olan sistemi sağlar. Bu cihazlardan biri null adında bir sahte cihazdır. / dev / null boş bir cihazdır - eğer istersen bir vakum. Bir şey koyduğun bir delik olmaktan başka hiçbir şey yapmaz ve ortadan kaybolur. Aşağıdaki /dev/nullgibi bir dosyaya kopyalarsanız :

cp /dev/null /tmp/foo

belirtilen dosya boş olacak.

Çıktı yönlendirme ile ilgili detaylı bilgiyi burada bulabilirsiniz .

Ve işte / dev / null öğesinin tam tanımı:

UNIX'de bu, yazılabilen bir sanal dosyadır. Bu dosyaya yazılan veriler atılır. Windows makinelerinde NUL dosya çağrısına benzer. Anahtar nokta: Bir makineyi köklendirirken, saldırganlar genellikle günlüğü / dev / null'a yönlendirir. Örneğin, ln -s / dev / null .bash_history komutu sistemin bash komutlarını kaydetmesine neden olur. Kültür: Yerel dilde, karadelikle aynı şey anlamına gelir. Tipik kullanım: Söyleyeceklerimi beğenmezseniz, lütfen yorumlarınızı / dev / null dizinine yönlendirin.


1
Lütfen grub.cfg gibi önemli sistem dosyalarını kullanarak örnekler vermeyin. Bu dosyayı silmek sisteminizi önyüklenemez hale getirir.
— terdon

2
Grub.cfg olayını denedim ve komuta girer girmez bilgisayarım kapandı, anakart pop çalmaya başladı ve LCD ekranım alev harflerinde 0xdeadbeef sergilenen alevlere dönüştü. Deneme.
— Thomas
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.