copendir()
是一個用于復制目錄的函數,而不是獲取目錄屬性的函數
stat()
函數獲取目錄屬性:#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <stdio.h>
int main() {
struct stat dir_stats;
const char *src_dir = "/path/to/source/directory";
const char *dest_dir = "/path/to/destination/directory";
if (stat(src_dir, &dir_stats) == 0) {
if (mkdir(dest_dir, dir_stats.st_mode) == 0) {
printf("Directory copied successfully.\n");
} else {
perror("mkdir");
}
} else {
perror("stat");
}
return 0;
}
在這個示例中,我們首先使用 stat()
函數獲取源目錄的屬性(包括權限、所有者等),然后將這些屬性應用到目標目錄。
shutil.copystat()
函數(Python):import shutil
src_dir = "/path/to/source/directory"
dest_dir = "/path/to/destination/directory"
shutil.copystat(src_dir, dest_dir)
print("Directory copied successfully.")
在這個示例中,我們使用 Python 的 shutil
模塊的 copystat()
函數來復制目錄屬性。