man stat; stat.h中有判断是什么文件的宏: S _ I S R E G ( ) 普通文件 S _ I S D I R ( ) 目录文件 S _ I S C H R ( ) 字符特殊文件 S _ I S B L K ( ) 块特殊文件 S _ I S F I F O ( ) 管道或F I F O S _ I S L N K ( ) 符号连接( P O S I X . 1或S V R 4无此类型) S _ I S S O C K ( ) 套接字(P O S I X . 1或S V R 4无此类型)
具体可以参照APUE文件目录相关章节。
下面给出一个具体的例子:
#include #include #include
int main(int argc, char* argv[]) { struct stat buf; if(argc < 2) { printf("Need Parameter"); return -1; }