当前位置: 首页 > news >正文

文件属性获取

1、getpwuid函数


#include <stdio.h>
#include <sys/types.h>
#include <pwd.h>
int main(int argc, char *argv[])
{uid_t uid = 1000;struct passwd * pw = getpwuid(uid);printf("name:%s gid:%d info:%s wd:%s shell:%s\n",pw->pw_name,pw->pw_gid,pw->pw_gecos,pw->pw_dir,pw->pw_shell);return 0;
}

2、getgruid函数

#include <stdio.h>
#include <sys/types.h>
#include <grp.h>int main(int argc, char *argv[])
{gid_t gid = 1000;struct group * gr= getgrgid(gid);printf("name:%s gid:%d\n",gr->gr_name,gr->gr_gid);return 0;
}

3、time 、 ctime、 localtime

#include <stdio.h>
#include <time.h>
int main(int argc, char *argv[])
{time_t tm;time(&tm);printf("%lu",tm);return 0;
}int main(int argc, char *argv[])
{time_t tm;time(&tm);printf("%s",ctime(&tm));return 0;
}int main(int argc, char *argv[])
{time_t tm;time(&tm);struct tm *tm_info =  localtime(&tm);if(NULL == tm_info){printf("localtime error\n");return 1;}printf("%d-%d-%d %d:%d:%d\n",tm_info->tm_year+1900,tm_info->tm_mon+1,tm_info->tm_mday,tm_info->tm_hour,tm_info->tm_min,tm_info->tm_sec);return 0;
}

4、symlink    link   软链接、硬链接

#include <stdio.h>
#include <unistd.h>
int main(int argc, char *argv[])
{int ret = symlink("./15localtime.c","softlink");if(-1 == ret){printf("symlink error\n");return 1;}return 0;
}int main(int argc, char *argv[])
{int ret = link("./01ls.c","hardlink");if(-1 == ret){printf("link error\n");return 1;}return 0;
}

5、truncate:扩大缩小空间,清零

#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
int main(int argc, char *argv[])
{fopen("aaa","w");int ret = truncate("aaa",1024*1024*1024);if(-1 == ret){printf("truncate error\n");return 1;}return 0;
}

6、perror、error、strerror  :指出错误

#include <stdio.h>
int main(int argc, char *argv[])
{FILE* fp = fopen("12312","r");if(NULL == fp){perror("fopen");return 1;}char buf[256]={0};if(NULL == fgets(buf,sizeof(buf),fp)){perror("fgets");return 1;}else {printf("buf is %s\n",buf);}return 0;
}#include <stdio.h>
#include <error.h>
#include <errno.h>
// errno 
int main(int argc, char *argv[])
{FILE* fp = fopen("12312","r");if(NULL == fp){error(1,errno,"fopen,filename:%s func:%s linenum:%d",__FILE__,__func__,__LINE__);printf("aaa\n");return 1;}return 0;
}#include <stdio.h>
#include <string.h>
int main(int argc, char *argv[])
{int i = 0 ;for(i = 0 ;i<256;i++){printf("%d %s\n",i,strerror(i));}return 0;
}

7、makefile 

src = jisuan.c  //主函数
src += func.c   //额外分装函数
obj = a.out     //执行名
flag = -lm      //链接$(obj):$(src)gcc $(src)-0 $(obj)clean:rm $(obj)

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Java 并发集合:阻塞队列集合介绍
  • .NET8使用VS2022打包Docker镜像
  • Xshell8最新版体验(业界最强大的SSH连接工具)
  • ZPScan网络扫漏工具-子命令说明
  • C#如何解决引用类型的“深度”克隆问题
  • 细说MCU检测按键输入的外部中断和修改HAL_GPIO_EXTI_IRQHandler() 的实现方法
  • 贪吃蛇(使用QT)
  • 连接投影仪/显示器只能扩展不能复制的解决方案
  • 七夕警示:探索社工库与网络搜索下的个人隐私泄露与保护策略
  • 机器学习西瓜书笔记(五) 第五章神经网络+代码
  • Mybatis(Day 18)
  • 代码随想录算法刷题训练营day49:LeetCode(42)接雨水、LeetCode(84)柱状图中最大的矩形
  • Less 教程:从入门到精通
  • Golang | Leetcode Golang题解之第329题矩阵中的最长递增路径
  • 如何有效构建企业微信私域流量池并提升用户粘性?
  • 【162天】黑马程序员27天视频学习笔记【Day02-上】
  • axios请求、和返回数据拦截,统一请求报错提示_012
  • canvas实际项目操作,包含:线条,圆形,扇形,图片绘制,图片圆角遮罩,矩形,弧形文字...
  • electron原来这么简单----打包你的react、VUE桌面应用程序
  • fetch 从初识到应用
  • JavaScript-Array类型
  • Java超时控制的实现
  • js正则,这点儿就够用了
  • Markdown 语法简单说明
  • SpriteKit 技巧之添加背景图片
  • vue的全局变量和全局拦截请求器
  • XForms - 更强大的Form
  • 给自己的博客网站加上酷炫的初音未来音乐游戏?
  • 买一台 iPhone X,还是创建一家未来的独角兽?
  • 入手阿里云新服务器的部署NODE
  • 微信开放平台全网发布【失败】的几点排查方法
  • 怎样选择前端框架
  • Spring第一个helloWorld
  • #QT项目实战(天气预报)
  • $LayoutParams cannot be cast to android.widget.RelativeLayout$LayoutParams
  • (01)ORB-SLAM2源码无死角解析-(56) 闭环线程→计算Sim3:理论推导(1)求解s,t
  • (20)目标检测算法之YOLOv5计算预选框、详解anchor计算
  • (AngularJS)Angular 控制器之间通信初探
  • (python)数据结构---字典
  • (Redis使用系列) Springboot 使用Redis+Session实现Session共享 ,简单的单点登录 五
  • (八)Flink Join 连接
  • (六)DockerCompose安装与配置
  • (三)模仿学习-Action数据的模仿
  • (十二)Flink Table API
  • (淘宝无限适配)手机端rem布局详解(转载非原创)
  • (图文详解)小程序AppID申请以及在Hbuilderx中运行
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解
  • (原創) 是否该学PetShop将Model和BLL分开? (.NET) (N-Tier) (PetShop) (OO)
  • (转)GCC在C语言中内嵌汇编 asm __volatile__
  • (转)ORM
  • (最优化理论与方法)第二章最优化所需基础知识-第三节:重要凸集举例
  • .MSSQLSERVER 导入导出 命令集--堪称经典,值得借鉴!
  • .mysql secret在哪_MySQL如何使用索引
  • .net core 6 集成和使用 mongodb
  • .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间)...