亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 服務器 > Linux服務器 > 正文

詳解Linux文件操作知識點

2024-09-05 23:05:01
字體:
來源:轉載
供稿:網友

文件操作的相關系統調用

創建

int creat(const char *filename, mode_t mode);

參數mode 指定新建文件的存取權限,它同umask 一起決定文件的最終權限(mode&umask),其中umask 代表了文件在創建時需要去掉的一些存取權限,它只影響讀、寫和執行權限,調用函數為int umask(int newmask)。

打開

int open(const char *pathname, int flags);

pathname是我們要打開的文件名(包含路徑名稱,默認在當前路徑下)

flags打開的標志

O_RDONLY 以只讀的方式打開文件

O_WRONLY 以只寫的方式打開文件

O_RDWR 以讀寫的方式打開文件

O_APPEND 以追加的方式打開文件

O_CREAT 創建一個文件

O_EXEC 如果使用了O_CREAT而且文件已經存在,就會發生一個錯誤

O_NOBLOCK 以非阻塞的方式打開一個文件

O_TRUNC 如果文件已經存在,則刪除文件的內容

int open(const char *pathname,int flag,mode_t mode)

當flag為O_CREATE,指定mode標志,用來表示文件的訪問權限

S_IRUSR 用戶可以讀

S_IWUSR 用戶可以寫

S_IXUSR 用戶可以執行

S_IRWXU 用戶可以讀、寫、執行

S_IRGRP 組可以讀

S_IWGRP 組可以寫

S_IXGRP 組可以執行

S_IRWXG 組可以讀、寫、執行

S_IROTH 其他人可以讀

S_IWOTH 其他人可以寫

S_IXOTH 其他人可以執行

S_IRWXO 其他人可以讀、寫、執行

S_ISUID 設置用戶的執行ID

S_ISGID 設置組的執行ID

mode標志也可以用數字來表示文件權限:

每個數字可以取1(執行權限)、2(寫權限)、4(讀權限)、0(無)或者是這些值的和。

第一位表示設置用戶ID

第二位表示設置組ID

第三位表示用戶自己的權限位

第四位表示組的權限

第五位表示其他人的權限

open("test", O_CREAT, 10705);

上述語句等價于:

open("test", O_CREAT, S_IRWXU | S_IROTH | S_IXOTH | S_ISUID );

讀寫

int read(int fd, const void *buf, size_t length);int write(int fd, const void *buf, size_t length);

參數fd文件描述符,buf為指向緩沖區的指針,length為緩沖區的大?。ㄒ宰止潪閱挝唬祷刂禐閷嶋H讀取和寫入的字節數。

read( )實現從文件描述符fd所指定的文件中讀取length個字節到buf所指向的緩沖區中,返回值為實際讀取的字節數

write( )實現將把length 個字節從buf 指向的緩沖區中寫到文件描述符fd所指向的文件中,返回值為實際寫入的字節數。

定位

對于隨機文件,我們可以隨機地指定位置讀寫:
int lseek(int fd, offset_t offset, int whence);

lseek()將文件讀寫指針相對whence移動offset(可取負值)個字節。操作成功時,返回文件指針相對于文件頭的位置。

參數whence可以使用如下值:

SEEK_SET:相對文件開頭。
SEEK_CUR:相對文件讀寫指針的當前位置。
SEEK_END:相對文件末尾。

關閉

int close(int fd);

C庫函數的文件操作——獨立于具體的操作系統平臺

創建和打開

FILE *fopen(const char *path, const char *mode);
fopen()實現打開指定文件filename,其中的mode為打開模式,Linux 系統不區分二進制文件和文本文件。

mode的值

r、rb 以只讀方式打開

w、wb 以只寫方式打開。如果文件不存在,則創建該文件,否則文件被截斷

a、ab 以追加方式打開。如果文件不存在,則創建該文件

r+、r+b、rb+ 以讀寫方式打開

w+、w+b、wh+ 以讀寫方式打開。如果文件不存在,則創建新文件,否則文件被截斷

a+、a+b、ab+ 以讀和追加方式打開。如果文件不存在,則創建新文件

讀寫

int fgetc(FILE *stream);int fputc(int c, FILE *stream);char *fgets(char *s, int n, FILE *stream);int fputs(const char *s, FILE *stream);int fprintf(FILE *stream, const char *format, ...);int fscanf (FILE *stream, const char *format, ...);size_t fread(void *ptr, size_t size, size_t n, FILE *stream);size_t fwrite (const void *ptr, size_t size, size_t n, FILE *stream);int fsetpos(FILE *stream, fpos_t *pos);nt fsetpos(FILE *stream, const fpos_t *pos);int fseek(FILE *stream, long offset, int whence);

 

fread()實現從stream中讀取n 個字段,每個字段為size個字節,并將讀取的字段放入ptr 所指的字符數組中,返回實際已讀取的字段數。

write()實現從緩沖區ptr 所指的數組中把n 個字段寫到stream 中,每個字段長為size個字節,返回實際寫入的字段數。

關閉

int fclose (FILE *stream);

Linux文件系統目錄結構

Linux,文件操作

/bin----存放著最經常使用的基本命令,如ls、cp、mkdir 等,這個目錄中的文件都是可執行的。

/boot----啟動Linux時使用的一些核心文件,包括一些連接文件以及鏡像文件,如vmlinuz、initrd.img

/dev----設備文件存儲目錄,應用程序通過對這些文件的讀寫和控制就可以訪問實際的設備。

/etc----系統管理所需要的配置文件和子目錄,如用戶賬號及密碼配置文件。

/home----普通用戶的家目錄,每個用戶都有一個自己的目錄,一般該目錄名是以用戶的賬號命名的。

/lib----庫文件存放目錄,系統最基本的動態連接共享庫,類似于Windows里的DLL文件。

/lost+found----一般情況下是空的,當系統意外崩潰或機器意外關機時會產生一些文件碎片放在這里。

/mnt----方便用戶臨時掛載別的文件系統的,如將光驅掛載在/mnt/上,進入該目錄就可以查看光驅里的內容

media----自動識別一些設備掛載到這個目錄下,例如U盤、光驅等等。

/opt----給主機額外安裝軟件所存放的目錄

/proc----操作系統運行時,進程及內核信息(比如CPU、硬盤分區、內存信息等)存放在這里。它是系統內存的映射,存在在內存,通過直接訪問這個目錄來獲取系統信息。

/root----超級權限用戶的家目錄

/sbin----超級權限用戶的可執行命令存放目錄,普通用戶無權限執行這個目錄下的命令

/tmp-----存放臨時文件。

/usr-----系統應用程序和文件(如命令、幫助文件)存放程序的目錄,類似于windows下的program files目錄。

/var-----經常被修改的目錄放在這個目錄下,如日志文件

/sys----內核設備樹的一個直觀反映。當一個內核對象被創建的時候,對應的文件和目錄也在內核對象子系統中被創建。

/initrd---若在啟動過程中使用了initrd 映像作為臨時根文件系統,則在執行完其上的/linuxrc掛接真正的根文件系統后,原來的初始RAM文件系統被映射到/initrd目錄。

Linux文件系統與設備驅動


注:相關教程知識閱讀請移步到服務器教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
精品国产一区二区三区四区在线观看| 久久综合伊人77777| 午夜精品蜜臀一区二区三区免费| 91福利视频在线观看| 福利视频导航一区| 日韩电影在线观看中文字幕| 日韩精品中文字幕在线| 亚洲色图35p| 国产精品第2页| 久久精品这里热有精品| 亚洲午夜av久久乱码| 日韩有码在线电影| 欧美视频在线免费看| 国产福利精品av综合导导航| 亚洲精品视频在线观看视频| 欧美做受高潮1| 久久精品视频99| 成人欧美在线视频| 亚洲精品国产免费| 亚洲天堂成人在线视频| 久久久久国产精品一区| 成人精品视频在线| 午夜精品一区二区三区视频免费看| 日韩免费看的电影电视剧大全| 欧美中文字幕视频在线观看| 国产不卡精品视男人的天堂| 亚洲丝袜在线视频| 欧美日韩免费一区| 精品人伦一区二区三区蜜桃网站| 色偷偷91综合久久噜噜| 午夜欧美不卡精品aaaaa| 午夜欧美不卡精品aaaaa| 欧美激情videoshd| 欧美在线激情网| 日韩免费av在线| 欧美激情视频在线免费观看 欧美视频免费一| 亚洲欧洲日本专区| 国产精品第3页| 亚洲欧美国产精品久久久久久久| 欧美成aaa人片在线观看蜜臀| 国产在线视频一区| 91在线观看免费观看| 国产精品第一页在线| 一区二区在线免费视频| 久久久亚洲国产| 久久久精品视频在线观看| 久久久久亚洲精品| 欧美洲成人男女午夜视频| 欧美在线影院在线视频| 欧美高清视频一区二区| 成人精品久久久| 亚洲午夜性刺激影院| 国产精品三级久久久久久电影| 91日韩在线播放| 国产在线98福利播放视频| 亚洲国产精品嫩草影院久久| 成人夜晚看av| 最近日韩中文字幕中文| 国产主播在线一区| 欧美激情喷水视频| 91中文在线观看| 亚洲欧美中文日韩在线v日本| …久久精品99久久香蕉国产| 亚洲欧美日韩天堂| 中文字幕久精品免费视频| 欧美日韩免费观看中文| 亚洲视屏在线播放| 久久国产天堂福利天堂| 国产精品扒开腿做爽爽爽视频| 成人性教育视频在线观看| 成人网在线免费观看| 欧美国产亚洲精品久久久8v| 欧美不卡视频一区发布| 成人av电影天堂| 国产精品久久久久久久av大片| 久久久噜噜噜久久久| 久久久久久久激情视频| 日韩av有码在线| 国产欧美精品va在线观看| 国内精品久久影院| 久精品免费视频| 亚洲精品suv精品一区二区| 久久综合亚洲社区| 国产欧美一区二区三区视频| 日本成人黄色片| 一本色道久久88综合日韩精品| 国产91精品久久久| 日韩视频精品在线| 国产精品电影久久久久电影网| 色偷偷亚洲男人天堂| 欧美香蕉大胸在线视频观看| 最新国产成人av网站网址麻豆| xxxxxxxxx欧美| 久久久噜久噜久久综合| 日韩免费在线视频| 日韩精品视频观看| 美女精品久久久| 欧美高清在线播放| 国产成人短视频| 日韩欧美aⅴ综合网站发布| 国产日韩综合一区二区性色av| 欧美亚洲视频一区二区| 亚洲欧洲中文天堂| 97在线视频免费看| 久久久女女女女999久久| 黑人巨大精品欧美一区二区一视频| 久久久女人电视剧免费播放下载| 国产精品自产拍在线观看中文| 亚洲美女又黄又爽在线观看| 亚洲剧情一区二区| 欧美在线一区二区三区四| 日韩精品在线私人| 欧美第一黄色网| 久久韩剧网电视剧| 欧美精品久久久久| 日韩在线视频中文字幕| 91av视频在线观看| 日韩欧美一区二区三区久久| 欧美日韩一区二区在线播放| 欧美精品在线免费观看| 日韩一区二区av| 亚洲男人的天堂在线播放| 欧美一级大片在线免费观看| 亚洲香蕉av在线一区二区三区| 伊人久久五月天| 在线观看国产精品淫| 成人午夜小视频| 91精品在线一区| 久久男人的天堂| 久久人人爽人人爽人人片av高请| 精品国产福利视频| 中文字幕亚洲专区| 日本国产欧美一区二区三区| 91精品视频专区| 欧美日本啪啪无遮挡网站| 精品日本高清在线播放| 欧美成人一区二区三区电影| 国产成人涩涩涩视频在线观看| 成人黄色av免费在线观看| 国产日韩精品在线播放| 亚洲成色777777在线观看影院| 久久久久久国产精品三级玉女聊斋| 视频在线一区二区| 亚洲毛片在线观看.| 亚洲无亚洲人成网站77777| 97欧美精品一区二区三区| 97免费中文视频在线观看| 欧美人与性动交a欧美精品| 亚洲精品小视频在线观看| 欧美极品欧美精品欧美视频| 日韩av日韩在线观看| 精品福利在线视频| 在线精品高清中文字幕| 欧美裸体xxxx极品少妇软件| 91av在线免费观看| 91精品国产综合久久香蕉| 国产成人精品电影| 日韩不卡中文字幕| 九九综合九九综合| 日韩免费看的电影电视剧大全| 亚洲自拍另类欧美丝袜| 性金发美女69hd大尺寸| 亚洲欧美激情另类校园| 日韩精品丝袜在线|