Linux檔案操作隨記

2021-07-16 16:21:54 字數 1876 閱讀 9698

int open(const

char* pathname,int flags);

int open(const

char* pathname,int flags,mode_t mode);

必選之一flags

解析o_rdonly

唯讀(readonly),定義為0

o_wronly

只寫(writeonly),定義為

o_rdwr

讀寫(readwrite),定義為2

部分可選flags解析

o_create

建立(create),如果檔案不存在則建立它,當使用此引數的時候,必須設定mode,說明新檔案許可權

o_excl

如果與o_creat同時設定,此指令會去檢查檔案是否存在,檔案若不存在則建立該檔案,否則將導致開啟檔案錯誤。此外,若o_creat與o_excl同時設定,並且將要開啟的檔案為符號連線,則將導致開啟檔案失敗

o_trunc

清空(truncate)將檔案截斷為0。

int

close(int fd);

tips:如果乙個程序中檔案沒有正常關閉檔案,當程序推出的時候系統會自動關閉開啟的檔案。之所以要關閉是因為系統檔案描述符數量有限制。

sszie_t read(int fd,void *buf,size_t count);

ssize_t write(int fd,const

void * buf,size_t count);

whence

含義seek_set

offset的值為相對檔案的開始處

seek_cur

offset的值為相對當前的位置

seek_end

offset為相對檔案的尾端的位置

int fstat(int fd, struct stat *buf);

struct stat ;
int stat(const

char *path, struct stat *buf);

int lstat(const

char *path, struct stat *buf);

void *mmap(void *addr, size_t length, int prot, int flags,

int fd, off_t offset);

int munmap(void *addr, size_t length);

munmap返回值:成功0,失敗-1。

length:檔案對映到記憶體的位元組大小。

prot:對映區保護方式。

fd:要對映到記憶體的檔案的檔案描述符。

offset:檔案偏移量。對映到記憶體中的檔案資料是起始於offset長為length的資料

tips:munmap解除對映,addr由mmap函式獲得,引數length 則是欲取消的記憶體大小。

int fcntl(int fd, int cmd); 

int fcntl(int fd, int cmd, long arg);

int fcntl(int fd, int cmd, struct flock *lock);

int ioctl(int d, int request, ...);

Python 檔案操作隨記

個人覺得需要熟知的 需要了解的 檔案操作open函式理解 open file,mode r buffering 1,encoding none,errors none,newline none,closefd true,opener none file 必需,檔案路徑 相對或者絕對路徑 mode 可...

LINUX命令隨記

pidof 找出正在執行程式的程序pid 格式 pidof program 找出program程式的程序pid,如果有多個就會全部列出,program不能是shell指令碼名稱。格式 pidof s program 找出program程式的程序pid,只列出乙個。single shot this i...

Linux命令隨記

find name xargs i cp home 解決方法 nohup將程式後台執行,並返回程序號 nohup python x 使用setsid命令,例 setsid python run.py c config.json退出xshell時,輸入exit退出 進入資料夾,比如刪除資料夾下所有jp...