這篇文章給大家介紹Linux中lstat函數如何使用,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
//這是一個使用stat系列函數來獲得arvg指定文件屬性的實例
#include <fcntl.h>
#include <sys/stat.h>
#include <stdio.h>
int main(int argc, char *argv[])
{
int i;
struct stat buf; //文件屬性存放緩沖區
char *ptr;
for (i=1; i<argc;i++) //命令行參數作為輸出參數
{
printf("%s 是一個 ", argv[i]); //首先打印輸出文件名
if (lstat(argv[i], &buf) < 0)
//如果lstat函數返回值小于0則表示函數調用失敗
{
printf("lstat error");
continue; //僅僅退出當前循環
}
//以下開始判斷文件類型
if (S_ISREG(buf.st_mode))
{
ptr = "普通文件"; //普通文件
}
else if (S_ISDIR(buf.st_mode))
{
ptr = "目錄文件"; //目錄文件
}
else if (S_ISCHR(buf.st_mode))
{
ptr = "字符設備文件"; //字符設備文件
}
else if (S_ISBLK(buf.st_mode))
{
ptr = "塊設備文件"; //塊設備文件
}
else if (S_ISFIFO(buf.st_mode))
{
ptr = "FIFO"; //先進先出文件
}
else if (S_ISLNK(buf.st_mode))
{
ptr = "符號鏈接"; //符號鏈接文件
}
else if (S_ISSOCK(buf.st_mode))
{
ptr = "套接字文件"; //套接字文件
}
else //如果不在以上文件類型則表明為未知文件類型
{
ptr = "未知文件類型";
}
printf("%s\n", ptr); //輸出文件類型
}
return 0;
}關于Linux中lstat函數如何使用就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。