列出指定目錄下所有可被其他使用者執行的檔案

2021-06-22 11:24:51 字數 928 閱讀 6024

知識點:

stat中的st_mode中包含了檔案的訪問許可權位,共有9個:

s_irusr: 使用者讀

s_iwusr: 使用者寫

s_ixusr: 使用者執行

s_irgrp: 組成員讀

s_iwgrp: 組成員寫

s_ixgrp: 組成員執行

s_iroth: 其他使用者讀

s_iwoth: 其他使用者寫

s_ixoth: 其他使用者執行

使用st_mode & s_ixoth 可以獲得檔案的其他使用者是否可執行的許可權位,如果該位為1,則該檔案可以被其他使用者執行,否則不能被執行。

**:#include

#include

#include

#include

#include

#include

#include

#define size 1024

int dir_run(char *path)

struct stat st;

struct dirent *entry;

char fullpath[size];

while((entry = readdir(dir)) != null)

sprintf(fullpath, "%s/%s", path, entry->d_name);     

if(lstat(fullpath, &st) != 0)

if(st.st_mode&s_ixoth)

if(s_isdir(st.st_mode))

}   

closedir(dir);

return 0;

}int main(int argc,char*argv)

dir_run(argv[1]);

return 0 ;

}

列出指定目錄下所有檔名

要求 絕對路徑名做輸入引數,列印輸出該路徑下所有檔名 知識點 開啟目錄函式 dir opendir const char path 讀取目錄函式 struct dirent readdir dir dir 返回下乙個目錄項的指標。include include dirent結構體定義如下 struc...

列出目錄下的所有檔案

定於需要列出的目錄位址 dir c apmserv5.2.6 www htdocs ahinksns ahinkphp 用 opendir 開啟目錄,失敗則中止程式 handle opendir dir or die cannot open dir echo files in dir 用 readd...

python列出目錄下所有的檔案

import os def listallfilesanddirs level,path files os.listdir path for file in files print level 1 file if os.path.isdir file listallfilesanddirs leve...