Heim  >  Artikel  >  Betrieb und Instandhaltung  >  So ermitteln Sie, ob ein Verzeichnis unter Linux vorhanden ist

So ermitteln Sie, ob ein Verzeichnis unter Linux vorhanden ist

(*-*)浩
(*-*)浩Original
2019-11-06 11:31:565171Durchsuche

So ermitteln Sie, ob ein Verzeichnis unter Linux vorhanden ist

Das Dateisystem ist an der Arbeit beteiligt, und manchmal muss festgestellt werden, ob Dateien und Verzeichnisse vorhanden sind. Ich habe APUE Kapitel 4 „Dateien und Verzeichnisse“ zusammengefasst, um zusammenzufassen, wie man korrekt ermittelt, ob Dateien und Verzeichnisse vorhanden sind, um zukünftige Anfragen zu erleichtern. (Empfohlenes Lernen: Linux-Betrieb und -Wartung )

Die STAT-Serienfunktion

Die STAT-Funktion wird verwendet, um die zugehörigen Strukturinformationen zurückzugeben einzureichen.

Die Funktionen der Statistikreihe haben drei Situationen, die jeweils dem Dateinamen, dem Dateideskriptor und der symbolischen Linkdatei entsprechen. Die Statistikstruktur beschreibt die Dateiattribute, hauptsächlich einschließlich Dateityp, Dateigröße usw. Die detaillierte Statistikstruktur ist wie folgt:

struct stat {
    mode_t    st_mode;    // file type & mode(permissions)
    ino_t     st_ino;     // i-node number(serial number)
    dev_t     st_dev;     // device number(filesystem)
    dev_t     st_rdev;    // device number for specials files
    nlink_t   st_nlink;   // number of links
    uid_t     st_uid;     // user ID of owner
    gid_t     st_gid;     // group ID of owner
    off_t     st_size;    // size in bytes, for regular files
    time_t    st_atime;   // time of last access
    time_t    st_mtime;   // time of last modification
    time_t    st_ctime;   // time of last file status change
    long      st_blksize; // best I/O block size
    long      st_blocks;  // number of 512-byte blocks allocated
};

Über die Statistik können wir Informationen wie Dateityp und Dateigröße erhalten. Zu den Dateitypen gehören: gewöhnliche Dateien, Verzeichnisdateien, Block-Spezialdateien, Zeichen-Spezialdateien, FIFO, Sockets und symbolische Links.

Um mithilfe der Stat-Funktionsreihe festzustellen, ob eine Datei oder ein Verzeichnis vorhanden ist, muss beim Ausführen der Stat-Funktion, falls die Datei vorhanden ist, weiter ermittelt werden, ob es sich bei der Datei um eine normale Datei oder eine Verzeichnisdatei handelt.

Die Statistikserienfunktion error gibt -1 zurück. Der Fehlercode wird in errno gespeichert:

rrree

Das obige ist der detaillierte Inhalt vonSo ermitteln Sie, ob ein Verzeichnis unter Linux vorhanden ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn