ENOENT neden “Böyle bir dosya veya dizin yok” anlamına geliyor?


507

Ne anlama ENTgeliyor ENOENT?

Hata olmamalı:

Böyle bir dosya ya da dizin yok

sadece adlandırmak ENOFILE?

Herhangi bir hikaye ya da sebep var mı?

Yanıtlar:


788

Error NO ENTry (veya Error NO ENTity) hatasının kısaltmasıdır ve aslında dosyalar / dizinlerden daha fazlası için kullanılabilir.

Kısaltılmış çünkü zamanın başındaki C derleyicileri sembollerde 8 karakterden fazlasını desteklemiyordu.


28
"aslında dosyalar / dizinlerden daha fazlası için kullanılabilir." - kodunuzun Linux ile birleştirilmesini istediğiniz durumlar hariç: lkml.org/lkml/2012/12/23/75
— amn

12
Hatanın 8 karakterden tasarruf etmek yerine açık olması durumunda kullanıcılar için daha değerli olacaktır. Bunun neden böyle olabileceği hakkında bir fikrin var mı?
— Brady Dowling

57
@BradyDowling Çünkü zamanın başındaki C derleyicileri sembollerde 8 karakterden fazlasını desteklemedi.
— Bazı programcı ahbap

15
@ Someprogrammerdude'nin yorumu C adlandırma kurallarıyla ilgili sorularımın (niteliklerim) çoğunu açıkladı.
— Jackson

3
@Jackson bu gibi command not founddüğümün içinde child_process . * * ağlar.
— Dwelle

122

Basitçe “Böyle bir dizin girişi yok”. Dizin girişleri dizinler veya dosyalar (veya sembolik bağlantılar, soketler veya borular veya aygıtlar) ENOFILEolabileceğinden , ad anlamında çok dar olurdu.


27
Simge bağlantıları, soketler, borular ve aygıtların tümü dosyalardır ve dizinlerdir. ENOFILE, ENOENT kadar anlamıyla geniş veya dar olacaktır.
— Guido Flohr
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.