在Debian系統中,使用C語言編寫的程序可以通過readdir函數來遍歷目錄。以下是一個簡單的示例,展示了如何使用readdir函數遍歷一個目錄并打印出其中的文件和子目錄。
首先,確保你的系統上安裝了GCC編譯器。如果沒有安裝,可以使用以下命令安裝:
sudo apt-get update
sudo apt-get install build-essential
然后,創建一個名為list_directory.c的文件,并將以下代碼粘貼到文件中:
#include <stdio.h>
#include <stdlib.h>
#include <dirent.h>
#include <sys/types.h>
#include <sys/stat.h>
int main(int argc, char *argv[]) {
DIR *dir;
struct dirent *entry;
if (argc != 2) {
fprintf(stderr, "Usage: %s <directory>
", argv[0]);
return EXIT_FAILURE;
}
dir = opendir(argv[1]);
if (dir == NULL) {
perror("opendir");
return EXIT_FAILURE;
}
while ((entry = readdir(dir)) != NULL) {
printf("%s
", entry->d_name);
}
closedir(dir);
return EXIT_SUCCESS;
}
保存文件后,在終端中編譯該程序:
gcc list_directory.c -o list_directory
現在,你可以運行這個程序來遍歷一個目錄。例如,要列出當前目錄下的所有文件和子目錄,可以運行:
./list_directory .
這將輸出當前目錄下的所有文件和子目錄。如果你想遍歷其他目錄,只需將.替換為目標目錄的路徑即可。