The detailed process of reading directory file information in Linux operating system
This article introduces the relevant knowledge of "the detailed process of reading directory file information in the Linux operating system". In the operation of actual cases, many people will encounter such a dilemma, so let the editor lead you to learn how to deal with these situations. I hope you can read it carefully and be able to achieve something!
General process:
1. Add header file dirent.h
Declaration structure pointer struct dirent * ptr
Declare a dir pointer DIR * fd
two。 Analyze the command line
3. Open the catalog file
Use the opendir () parameter to parse the second parameter on the command line, argv [1], and return the directory file pointer value assigned to fd
4. Output redirection
Use the freopen () parameter to parse the command line third parameter argv [2], permission "w +", and file descriptor stdtout
5. Start reading directory file contents
Using a loop while ((ptr=readdir (fd))! = NULL), readdir () extracts one file item at a time from the directory file, and the pointer moves forward. Until the null value is returned at the end of the file. The ptr pointer points to the dirent structure returned by readdir (). The result returned by each function call is different from the member content in the dirent, where the value of the d_name member is the file name in the directory read each time. Using the file information code in the original mstat.c given by Zhou Zhou to make ptr- > d_name as the parameter of fopen () and fstat (), you can print out the information of all the files in the directory and save it in the output file.
6. Close all file and directory file pointers.
This is the end of the detailed process of reading directory file information in the Linux operating system. Thank you for your reading. If you want to know more about the industry, you can follow the website, the editor will output more high-quality practical articles for you!