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 };
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!