apue 04.pdf
S _ I S L N K ( )
S _ I S S O C K ( )
符号连接( P O S I X . 1 或 S V R 4无此类型) 套接字( P O S I X . 1 或 S V R 4无此类型)
为了跨平台,代码写成#ifdef这种
#include "apue.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) {
err_ret("lstat error");
continue;
}
if (S_ISREG(buf.st_mode))
ptr = "regular";
else if (S_ISDIR(buf.st_mode))
ptr = "directory";
else if (S_ISCHR(buf.st_mode))
ptr = "character special";
else if (S_ISBLK(buf.st_mode))
ptr = "block special";
else if (S_ISFIFO(buf.st_mode))
ptr = "fifo";
#ifdef S_ISLNK
else if (S_ISLNK(buf.st_mode))
ptr = "symbolic link";
#endif
#ifdef S_ISSOCK
else if (S_ISSOCK(buf.st_mode))
ptr = "socket";
#endif
else
ptr = "** unknown mode **";
printf("%s\n", ptr);
}
exit(0);
}
这样定义的
#define S_ISDIR (mode) (((mode) & S_IFMT) == S_IFDIR)
分享到:
相关推荐
stat系统调用系列包括了fstat、stat和lstat,它们都是用来返回“相关文件状态信息”的,三者的不同之处在于设定源文件的方式不同。
简单易懂哦!... struct stat buf; struct passwd *usr; struct group *grp; int rt; struct tm *ttime; char linkname[64]; rt=lstat(name,&buf;); //调用lstat 获取文件属性,并对返回值做错
文件夹 遍历的代码 int isDir(const char* path) { struct stat st; lstat(path, &st;); return S_ISDIR(st.st_mode);
代码如下:#include<sys>#include<unistd>int is_dir(char *path){ struct stat buf;... 您可能感兴趣的文章:VC++获得当前进程运行目录的方法C++递归删除一个目录实例C++检查某个文件或目录是否存在的函数C/
fs.lstat(path, [callback(err, stats)]) 由于该方法属于fs模块,使用前需要引入fs模块(var fs= require(“fs”) ) 接收参数: path 文件路径 callback 回调,传递两个参数,异常参数err, 文件信息数组 stats ...
一个进程池的服务器程序 下面做了非常简单的http服务器,该服务器只能接收Get请求。 流程大概如下: 1,父进程listen,创建pipe(下面所有父子进程之间的通信都用该pipe) 2,父进程预fork n个子进程 3,各个子...
0.00632 18 2.31 0 0.538 6.575 65.2 4.09 1 296 15.3 396.9 4.98 24 0.02731 0 7.07 0 0.469 6.421 78.9 4.9671 2 242 17.8 396.9 9.14 21.6 0.02729 0 7.07 0 0.469 7.185 61.1 4.9671 2 242 17.8 392.83 4.03 ...
从 fs.stat()、fs.lstat() 和 fs.fstat() 及其同步版本返回的对象都是该类型。 如果传入这些函数的 options 中的 bigint 为 true,则数值会是 bigint 型而不是 number 型。 如: Stats { dev: 2114, ino: ...
方法返回一个stat数组对象,包含以下信息:(以下信息为案例中读取的文件信息,非默认值) 代码如下: { dev : 0 , mode : 33206 , nlink : 1 , uid : 0 , gid : 0 , rdev : 0 , ...
S State ->列出指定状态的设备,3种状态可选,(1)已定义->defined,d,D,0;(2)可用->available,a,A,1;(3)停止->stopped,s,S,2; s Subclass ->指定设备的子类名称,subclass包括什么类型可用参数P显示; t Type ->指定...
数据集中的每一行数据都是对波士顿周边或城镇房价的情况描述,下面对数据集变量进行说明,方便大家理解数据集变量代表的意义。 CRIM: 城镇人均犯罪率 ZN: 住宅用地所占比例 INDUS: 城镇中非住宅用地所占比例 ...
文件操作 小程序 hello goodluck
其中,前13个字段是对某一个房产的描述信息,最后一个是平均房产价格。 字段解释: CRIM per capita crime rate by town ZN proportion of residential land zoned for lots over 25,000 sq.ft. INDUS ...
ZN:占地 25000 平方英尺(1 英尺=0.3048 米)以上的住宅用地比例 INDUS:每个城镇的非零售商业用地比例 CHAS:查尔斯河(Charles River)变量(若土地位于河流边界,则为 1;否则为 0) NOX:一氧化氮浓度(每...
在linux中,有时候我们只知道文件描述符却不知道它的名字及其完整的路径,如果我们想获取其路径该怎么办呢?其实很简单,在linux中每个被打开的文件都会在/proc/self/fd/目录中有记录,其中(/proc/self/fd/文件描述...
flask-ml-azure-serverless 在Azure App Services上部署Flask机器学习应用程序 机器学习应用的目的 该应用程序是通过使用Flask框架在Python中实现的。 它使用预建的机器学习模型根据预测房价。... "LSTAT":{
CHAS: 查尔斯河虚拟变量(如果土地位于河边,则为 1,否则为 0)。 NOX: 一氧化氮浓度。 RM: 每个住宅的平均房间数。 AGE: 1940 年之前建造的自住单位的比例。 DIS: 加权距离到波士顿五个就业中心的距离。 RAD...
1、手动实现递归1.1 stat()函数族stat函数族包括:stat,fstat以及lstat函数,都是向用户返回文件的属性信息(元数据)。 代码如下:view plaincopy to clipboardprint?#include int stat(const char*pathname,