系統編程-------目錄操作

目錄操作

linux 下一切皆文件

1、創建目錄

使用mkdr創建目錄

#include <sys/stat.h>
#include <sys/types.h>
int mkdir(const char *pathname, mode_t mode);

參數:

  • pathname 待創建目錄路徑
  • mode 創建目錄權限

返回值:成功返回0;出錯返回-1;

2、刪除目錄

使用rmdir刪除目錄

#include <unistd.h>
int rmdir(const char *pathname);

參數:

  • pathname 要刪除的目錄,必須為空目錄

返回值:成功返回0;失敗返回-1;

3、打開目錄

使用opendir()打開目錄

#include <sys/types.h>
#include <dirent.h>
DIR *opendir(const char *name);

參數:

  • name 要打開的目錄名稱

返回值:

  • 成功返回指向該目錄的指針;失敗返回NULL;

使用fdopendir()打開目錄****************


#include <sys/types.h>
#include <dirent.h>
DIR *fdopendir(int fd);

參數:

  • fd *******************************

返回值:

  • 成功返回指向該目錄的指針;失敗返回NULL;

4、讀取目錄信息

使用readdir()讀取目錄信息*******************************

#include <dirent.h>
struct dirent *readdir(DIR *dirp);
int readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result);
?```


struct dirent {
ino_t d_ino; /* inode number /
off_t d_off; /
not an offset; see NOTES /
unsigned short d_reclen; /
length of this record /
unsigned char d_type; /
type of file; not supported
by all filesystem types /
char d_name[256]; /
filename */
};


參數:

- struct dirent  結構體,定義目錄的各種信息

## 5、關閉目錄

> 使用closedir()關閉目錄

include <sys/types.h>

include <dirent.h>

int closedir(DIR *dirp);

參數:

- dirp      文件指針

返回值:

- 成功返回0;失敗返回-1;
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,969評論 19 139
  • 前言 把《C++ Primer》[https://book.douban.com/subject/25708312...
    尤汐Yogy閱讀 9,540評論 1 51
  • 方羽的家住在一個落后的小山村,每當逢年過節的時候,親戚都是要相互串門的,俗稱“走親戚”。 方羽最喜...
    寒更雨歇閱讀 328評論 0 2
  • 最近常聽薛之謙和楊宗緯的歌,雖然對音樂是個門外漢,但也想表達對歌手歌曲的理解和感受。 說到薛之謙,4歲喪母...
    香如故L閱讀 2,919評論 6 7