環境:vmware workstation;centos-6.4-x86_64
說明:
1、目錄操作第一步:開啟目錄,用opendir函式開啟目錄檔案。函式說明:2、目錄操作第二步:讀取目錄,用readdir函式讀出目錄檔案內容。
3、目錄操作第三步:關閉目錄,用closedir函式關閉目錄檔案。
dir *opendir(const char *pathname);程式**說明:struct dirent *readdir(dir *dir);
int closedir(dir *dir);
opendir函式開啟pathname指向的目錄檔案,如果錯誤返null
步驟:1、建立並編寫原始檔main.c:
#include #include #include #include #include int main(int argc, char *args)
// 獲取使用者輸入的引數
const char *temp_dir = args[1];
// 開啟目錄,如果開啟目錄失敗,返回null,成功返回目錄結構體
dir *dir = opendir(temp_dir);
// 判斷目錄是否正確開啟
if (dir == null)
// 定義結構體指標,用來獲取readdir的返回值
struct dirent *dest;
// 迴圈讀取目錄
while (1)
else
} // 關閉目錄
closedir(dir);
return 0;
}
2、建立並編寫檔案makefile:
.suffixes:.c .o
cc=gcc
srcs=main.c
objs=$(srcs:.c=.o)
exec=main
start: $(objs)
$(cc) -o $(exec) $(objs)
@echo "-----------------------------ok-----------------------"
.c.o:
$(cc) -wall -o $@ -c $<
clean:
rm -rf $(exec) $(objs)
3、編譯並執行程式:
[negivup@negivup mycode]$ make
gcc -wall -o main.o -c main.c
gcc -o main main.o
-----------------------------ok-----------------------
[negivup@negivup mycode]$ ./main / 這是執行程式時輸入的形式
................
Linux下目錄及其操作命令
用來建立目錄。m,more more 將新建目錄的訪問許可權設定為more,訪問許可權用給定的八進位制數字表示。p,panrents 可一次性建立多個目錄,即如果新建目錄所指定的路徑中有些父目錄尚不存在,此選項可以自動建立他們。mkdir more 700 home mengqc test 在目錄 ...
Linux目錄操作
建立目錄 include include int mkdir const char pathname,mode t mode 第乙個引數是要建立目錄的名字,第二個引數指定了目錄訪問許可權,程序的umask值會影響到最終生成目錄的許可權。建立成功的時候返回0,失敗返回 1.mkdir會在建立的目錄同時...
Linux目錄操作
找到當前目錄 char getcwd char buf,size t size 將當前工作目錄的絕對路徑名複製到 buf中,size指示 buf大小,如果buf 不夠大,裝不下該路徑,則getcwd 函式返回 null int main void char buf 1024 char fd getc...