statfs函式的應用

2021-05-23 18:11:27 字數 2660 閱讀 5073

statfs函式的應用

1 #include /* 或者 */  

3 int statfs(const char *path, struct statfs *buf);  

4 int fstatfs(int fd, struct statfs *buf);

引數:  

path: 位於需要查詢資訊的檔案系統的檔案路徑名。    

fd: 位於需要查詢資訊的檔案系統的檔案描述詞。

buf:以下結構體的指標變數,用於儲存檔案系統相關的資訊

struct statfs ;

相關的檔案系統型別有:

adfs_super_magic      0xadf5

affs_super_magic      0xadff

befs_super_magic      0x42465331

bfs_magic             0x1badface

cifs_magic_number     0xff534d42

coda_super_magic      0x73757245

coh_super_magic       0x012ff7b7

cramfs_magic          0x28cd3d45

devfs_super_magic     0x1373

efs_super_magic       0x00414a53

ext_super_magic       0x137d

ext2_old_super_magic  0xef51

ext2_super_magic      0xef53

ext3_super_magic      0xef53

hfs_super_magic       0x4244

hpfs_super_magic      0xf995e849

hugetlbfs_magic       0x958458f6

isofs_super_magic     0x9660

jffs2_super_magic     0x72b6

jfs_super_magic       0x3153464a

minix_super_magic     0x137f /* orig. minix */

minix_super_magic2    0x138f /* 30 char minix */

minix2_super_magic    0x2468 /* minix v2 */

minix2_super_magic2   0x2478 /* minix v2, 30 char names */

msdos_super_magic     0x4d44

ncp_super_magic       0x564c

nfs_super_magic       0x6969

ntfs_sb_magic         0x5346544e

openprom_super_magic  0x9fa1

proc_super_magic      0x9fa0

qnx4_super_magic      0x002f

reiserfs_super_magic  0x52654973

romfs_magic           0x7275

smb_super_magic       0x517b

sysv2_super_magic     0x012ff7b6

sysv4_super_magic     0x012ff7b5

tmpfs_magic           0x01021994

udf_super_magic       0x15013346

ufs_magic             0x00011954

usbdevice_super_magic 0x9fa2

vxfs_super_magic      0xa501fcf5

xenix_super_magic     0x012ff7b4

xfs_super_magic       0x58465342

_xiafs_super_magic    0x012fd16d

返回說明:  

成功執行時,返回0。失敗返回-1,errno被設為以下的某個值  

eacces: (statfs())檔案或路徑名中包含的目錄不可訪問

ebadf : (fstatfs()) 檔案描述詞無效

efault: 記憶體位址無效

eintr : 操作由訊號中斷

eio    : 讀寫出錯

eloop : (statfs())解釋路徑名過程中存在太多的符號連線

enametoolong:(statfs()) 路徑名太長

enoent:(statfs()) 檔案不存在

enomem: 核心記憶體不足

enosys: 檔案系統不支援呼叫

enotdir:(statfs())路徑名中當作目錄的元件並非目錄

eoverflow:資訊溢位

文章出處:飛諾網(www.firnow.com):http://dev.firnow.com/course/6_system/linux/linuxjs/200896/139506.html

查詢磁碟空間 statfs函式

因為要讀取sd卡的大小和使用情況,所以用到statfs這個函式,功能類似於df命令。需要的標頭檔案 include int statfs const char path,struct statfs buf struct statfs 返回值 成功執行時,返回0。失敗返回 1,errno被設為以下的某...

ASP應用中的應用函式

經常寫些系統,那麼一般都是從登入程式開始,每接乙個系統就寫一次登入,好麻煩。乾脆直接做個登入驗證函式吧,對我來說,大都情況可以勝任了 function chk regist requestname,requestpwd,tablename,namefield,pwdfield,reurl dim n...

函式指標的應用

函式的指標 include using namespace std void fun1 int a,int n void fun2 int a,int n int main fun a,5 步驟4 cout fun fun2 fun a,5 fun fun1 fun a,5 return 0 函式指...