在linxu中也有相對應的檔案系統呼叫介面,如open/read/write/lseek/close等,以下列舉這幾個介面的具體用法
1.openint open(const char pathname, int flags, mode_t mode)
2.readssize_t read(int fd, void buf, size_t count);
fd :檔案描述符,open的返回值。
buf:將讀的資料放入該緩衝區中。
count:要讀的位元組數。
返回值:實際寫入的位元組數 ,失敗:-1。
3. writessize_t write(int fd, const void buf, size_t count);
fd :檔案描述符,open的返回值。
buf:要寫入的資料。
count:要寫入的位元組數。
返回值:實際寫入的位元組數 ,失敗:-1。
4.lseekoff_t lseek(int fd, off_t offset, int whence);
fd :檔案描述符,open的返回值。
whence:seek_set (檔案開始出), seek_cur(寫入位置), seek_end(檔案末尾)。
offset:偏移量。
5.closeint close(int fd);
fd :檔案描述符,open的返回值。
#include
#include
#include
#include
#include
#include
intmain()
char data=
"this is sysio demo!"
;int ret=
write
(fd,data,
strlen
(data));
if(ret<0)
//跳轉檔案的讀寫位置到指定處
lseek
(fd,0,
seek_set);
char buf[
1024]=
; ret=
read
(fd,buf,
1023);
if(ret<0)
printf
("ret:%d-[%s]\n"
,ret,buf)
;close
(fd)
;return0;
}
linux檔案系統系統呼叫 fallocate
int fallocate int fd,int mode,off t offset,off t len 為檔案預分配物理空間。include 成功返回0,失敗返回 1。fd檔案描述符 mode 目前兩種mode 1.falloc fl keep size 從offset開始分配大小為len的空間,...
Linux 檔案系統呼叫(習題)
1 設計乙個程式,要求開啟檔案 pass 如何沒有這個檔案,新建此檔案,許可權設定為只有所有者有唯讀許可權。程式 include include include int main 2 設計乙個程式,要求新建乙個檔案 hello 利用write函式將 linux下c軟體設計 字串寫入該檔案 程式 in...
linux系統呼叫之檔案系統操作
access 確定檔案的可訪問性 chdir 改變當前工作目錄 fchdir 參見chdir chmod 改變檔案方式 fchmod 參見chmod chown 改變檔案的屬主或使用者組 fchown 參見chown lchown 參見chown chroot 改變根目錄 stat 取檔案狀態資訊 ...