GNU/Linux >> Znalost Linux >  >> Linux

Proč ENOENT znamená Žádný takový soubor nebo adresář?

Je to zkratka Error NO ENTry (nebo Error NO ENTity) a lze ji ve skutečnosti použít pro více než jen soubory/adresáře.

Je to zkrácené, protože kompilátory C na úsvitu času nepodporovaly více než 8 znaků v symbolech.


Je to prostě „Žádný takový záznam v adresáři“. Protože položky adresáře mohou být adresáře nebo soubory (nebo symbolické odkazy, zásuvky, kanály nebo zařízení), název ENOFILE by byl příliš úzký ve svém významu.


Úplný seznam všech kódů a lepší popis toho, co každý z nich znamená, naleznete na errno.hToto je soubor začlenění, který je součástí standardní knihovny C a komentáře objasňují, o jakou chybu jde. V tomto případě:

#define ENOENT 2 /* Žádný takový soubor nebo adresář */


Linux
  1. fatální chyba openssl/evp.h:Žádný takový soubor nebo adresář:[Vyřešeno]

  2. Nelze spustit žádný takový soubor nebo adresář [Opravit]

  3. Chyba:Tcl.h nebyl nalezen (žádný takový soubor nebo adresář)?

  1. Chyba kompilace:g++:chyba při pokusu o spuštění 'cc1plus':execvp:Žádný takový soubor nebo adresář

  2. arm-linux-gnu-gcc fatální chyba:stdio.h:Žádný takový soubor nebo adresář

  3. Bash:Žádný takový soubor nebo adresář?

  1. sys/types.h:Žádný takový soubor nebo adresář

  2. Příkaz conda vyzve k chybě:Špatný interpret:Žádný takový soubor nebo adresář

  3. Proč Bash nedává žádný takový soubor nebo adresář pro program, který je v mé PATH?