日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

lseek、stat、access、chmod、strtol、truncate、unlink

發(fā)布時間:2023/11/30 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 lseek、stat、access、chmod、strtol、truncate、unlink 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

lseek,可實現(xiàn)計算文件長度,以及文件擴展。

int ret = lseek(fd, 0, SEEK_END); //文件長度printf("file lendth = %d\n", ret);

?

int ret = lseek(fd, 2000, SEEK_END); //文件拓展2000個byte 在文件末尾偏移2000printf("return value %d\n", ret);//實現(xiàn)文件拓展,需要在最后做一次寫操作write(fd, "a", 1);
  //最后有原長度加2001大小 a在最后其余為空洞

stat,顯示文件的基礎信息,可作為命令使用(stat english? ? 顯示english文件的信息)

  頭文件:<sys/types.h>?<sys/stat.h> <unistd.h>

  函數(shù)有:int stat(const chat *path, struct stat *buf);  //buf為傳出參數(shù)? 由于函數(shù)向外輸出相應信息

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

      int lstat(const char *path, struct stat *buf);

  stat與lstat的區(qū)別是,stat遇到軟連接時追蹤原文件,顯示原文件的大小。lstat顯示軟連接的大小。

struct stat{dev_t st_dev;//文件的設備標號ino_t st_ino;//節(jié)點mode_t st_mode;//文件類型和儲存權(quán)限nlink_t st_nlink;//硬鏈接數(shù)目uid_t st_uid;//用戶IDgid_t st_gid;//組ID ..... }

?

access,測試文件是否擁有某種權(quán)限,讀、寫、執(zhí)行、是否存在

  頭文件:<unistd.h>

  函數(shù):int access(const char? *pathname, int mode);

  mode, R_OK是否讀、W_OK是否寫、X_OK是否可執(zhí)行、F_OK是否存在

  存在為0,失敗為-1

?

chmod,修改文件權(quán)限。詳情見man文檔

?

strtol,將字符串轉(zhuǎn)換為相應進制的數(shù)

  <stdlib.h>

  long int strtol(const char *nptr, char **endptr, int base);

  nptr為字符串,endptr通常為空,base為想要轉(zhuǎn)成的進制

?

chown,修改文件所有者

  

truncate,專門由于拓展文件

  int truncate(const char *path, off_t length);

  int ftruncate(int fd, off_t length);

  length,當小于文件長度時街截取文件,保持length大小。大于文件長度時,拓展文件,空洞補填

?

link,創(chuàng)建一個硬鏈接,

  int link(const char *oldpath, const char *newpath);

symlink,創(chuàng)建軟連接,參數(shù)一侄

?

unlink,刪除鏈接,創(chuàng)建/刪除臨時文件

  先用open創(chuàng)建文件open("tempfile", O_CReaT | O_RDWR, 0664);

  在文件關(guān)閉前調(diào)用unlink("tempfile");

  當文件被關(guān)閉時文件就會被刪除,文件處于打開狀態(tài)時無法被刪除,關(guān)閉后被unlink

  

轉(zhuǎn)載于:https://www.cnblogs.com/lr1402585172/p/10482200.html

總結(jié)

以上是生活随笔為你收集整理的lseek、stat、access、chmod、strtol、truncate、unlink的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。