qfedu-linux-advanced-level/day2/d3.c

28 lines
785 B
C

#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
// 使用 stat 函数获取文件的信息,并判断文件类型
int main(int argc, char const *argv[])
{
const char *path = argv[1]; // 获取命令行参数中的文件路径
struct stat fileStat;
if (stat(path, &fileStat) == 0)
{
// 获取文件信息成功
if (fileStat.st_mode & __S_IFDIR)
{
printf("%s 是一个目录\n", path); // 判断文件是否为目录,并输出相应信息
}
else if (fileStat.st_mode & __S_IFREG)
{
printf("%s 是一个普通文件\n", path); // 判断文件是否为普通文件,并输出相应信息
}
}
return 0; // 返回成功码
}