资源简介
非常好的Qt程序 软件工程的程序 可以作为很好的参考
代码片段和文件信息
#include
#include
#include
#include
#include
#include
#include
static void usage(char *prog_name)
{
printf(“LIST 1.0 by Jiang jiangyanjun0718@163.com “__DATE__“ “__TIME__“\n“
“Usage: %s [OPTION]... [FILE]...\n“
“List information about the FILEs (the current directory by default)\n\n“
“ -? --help Display this help and exit\n“
“ -a --all Do not hide entries starting with .\n“
“ -r --recursive List subdirectories recursively\n“
“ -l --low= Minimum of file size\n“
“ -h --high= Maximum of file size\n“
“ -m --mdays= Limit file last modified time\n\n“ prog_name);
}
static struct option longopts[] = {
{ “help“ no_argument NULL ‘?‘ }
{ “all“ no_argument NULL ‘a‘ }
{ “recursive“ no_argument NULL ‘r‘ }
{ “low“ required_argument NULL ‘l‘ }
{ “high“ required_argument NULL ‘h‘ }
{ “mdays“ required_argument NULL ‘m‘ }
{ 0 }
};
static unsigned int recur = 0 all = 0 low = 0 high = 0xffffffff mtime = 0;
static void list(char *name int expand)
{
char path[1024];
DIR *dir;
struct dirent *ent;
struct stat st;
strcpy(path name[0] ? name : “.“);//鑻ヨ緭鍏ヤ负绌猴紝琛ㄧず褰撳墠鐩綍锛涜礋璐e皢鍏惰祴缁檖ath
if (stat(path &st) == -1) {
fprintf(stderr “%s: %s\n“ name strerror(errno));
return;
}
if (S_ISREG(st.st_mode)) {//鍒ゆ柇鏄惁鏄竴涓父瑙勬枃浠?
if (st.st_size >= low && st.st_size <= high && st.st_mtime >= mtime)
printf(“%10d %s\n“ st.st_size name);
return;
}
if (S_ISDIR(st.st_mode) && expand) {
if ((dir = opendir(path)) == NULL) {
fprintf(stderr “%s: %s\n“ name strerror(errno));
return;
}
while ((ent = readdir(dir)) != NULL) {
if (strcmp(ent->d_name “.“) == 0 || strcmp(ent->d_name “..“) == 0)//蹇界暐.鍜?.
continue;
if (!all && ent->d_name[0] == ‘.‘)//鑻ll == 0 涓?鏂囦欢鐨勭涓€涓瓧绗︿负‘.‘
continue;
sprintf(path “%s%s%s“ name name[0] ? “/“ : ““ ent->d_name);
list(path recur);//閫氳繃recur鐨勫€兼潵鎵ц鏄惁閫掑綊
}
closedir(dir);
}
}
int main(int argc char **argv)
{
int k opt;
while ((opt = getopt_long(argc argv “arl:h:m:?“ longopts NULL)) != -1)
switch (opt) {
case ‘?‘: usage(argv[0]); exit(0);
case ‘r‘: recur = 1; break;
case ‘a‘: all = 1; break;
case ‘l‘: low = atoi(optarg); break;
case ‘h‘: high = atoi(optarg); break;
case ‘m‘: mtime = time(0) - atoi(optarg) * 86400; break;
}
if (optind == argc)
list(““ 1);
else
for (k = optind; k < argc; k++)
lis
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-05-26 17:16 server\
文件 3184 2013-05-17 00:30 server\a.cpp
文件 80 2013-05-17 00:30 server\a.h
文件 1154 2013-05-24 12:10 server\main.cpp
文件 343 2013-05-23 19:01 server\server.pro
文件 17679 2013-05-26 17:16 server\server.pro.user
文件 27823 2013-05-20 20:49 server\server.pro.user.2.5pre1
目录 0 2013-05-25 00:19 slave\
文件 918 2010-04-21 09:25 slave\globals.h
文件 177 2013-05-25 00:09 slave\main.cpp
文件 7450 2013-05-04 22:21 slave\sensor.cpp
文件 927 2010-04-24 11:19 slave\sensor.h
文件 10019 2013-05-25 00:19 slave\slave.cpp
文件 1124 2010-04-24 09:54 slave\slave.h
文件 457 2013-05-25 00:14 slave\slave.pro
文件 17674 2013-05-25 00:19 slave\slave.pro.user
文件 639 2013-05-25 00:09 slave\slave.ui
文件 6904 2013-05-04 22:20 slave\slavethread.cpp
文件 485 2010-04-24 09:50 slave\slavethread.h
- 上一篇:A1超级aWp专用精悍CS1.5脚本
- 下一篇:京东多线程版易语言源码
相关资源
- 北邮-计算机网络课件
- 2018北邮大三下数据库实验报告合集
- 北邮电子工艺实习仿真及报告
- 北邮的《组合数学》讲义
- 软件工程模型与方法 课件
- 北邮信息检索实验
- 基于stm32的温控风扇
- 北邮林家儒版的电子电路基础
- 北邮算法设计与分析课件
- 北邮信号与系统考研真题2003-2015及其
- 北邮通信原理 第三版 周炯槃 课后习
- 北邮数据库实验说明
- [BUPT]计算机网络课程设计 - DNS中继服
- 北邮形式语言自动机考试卷.zip
- 北邮大三软件工程课程历年考试题目
- 北邮通信原理第三版课后答案
- 北邮现代交换原理实验报告全
- 北邮编译原理课件 配有期中期末试卷
- 通信原理答案 周炯槃 北京邮电大学
- 通信原理合订本2005-周炯盘-北邮.pdf
- 信息隐藏技术—隐写术与数字水印北
- 基于QT Creator5.4的酒店管理系统
- 水温控制系统论文附电路图及程序
- 基于51单片机的智能温控风扇源码+原
- 北邮《概率统计》+《数字电路》期
- 北邮概率论与随机过程 课件完整版
- STM32温控风扇
- 北邮大三下 数据库实验报告合集
- 北京邮电大学软件工程温控系统平时
- 北邮数电实验电风扇
评论
共有 条评论