热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linuxc/c++中使用shell命令

命令格式:system(ls-l);,使用system即可首先需要知道查询命令:find,find命令中可以查找磁盘中的文件

                命令格式:system("ls -l");,使用system即可

首先需要知道查询命令:find, find命令中可以查找磁盘中的文件,find命令中有比较多的参数,这里介绍常用的几种:

      -type  根据文件属性查找,有  b: 块设备、   d :目录、    c:字符设备、    p:符号链接、  f:普通文件、s:socket文件   ,要查找.txt、.jpg这样的普通文件就采用 

        -type f 查找的结果就是只含冰普通文件。

             根据文件的时间信息查找的参数有:    后面的参数可写成: n、 +n、 -n, 分别表示:在什么时候、之前、之内, 

    -atime:最近一次访问时间, 单位:天, -atime 5表示在从现在往前数第五天访问的文件, -atime +5表示在5天前访问的时间, -atime -5表示在5天之内访问的时间

                     -mtime:最近一次修改时间, 单位:天,

       -ctime: 文件创建时间,单位:天     

     -amin:最近一次访问时间, 单位:分钟

   -mmin:最近一次修改时间, 单位:分钟,

      -cmin:文件创建时间, 单位:分钟,

                  例如,使用-cmin在一个接收摄像头实时上传的文件夹中进行检测的结果如下图所示,+5的没有测试,图 片太多。19:15:15秒,这是时间

                                       

    

                 对于查找最新的上传的图片所以命令为:  find /home/pi/ftp/camera1 -amin -1 -type f  即可,其实对于一分钟这里有很多中写法,用-mmin、-cmin都可以,对于一分钟的可以1 、-1      都可以,超过一分钟的就只能用-n了,而对于a、c、m的区别具体的可以再找找资料,这里给出其中的一个差别如下图所示:   


                             


                   若对find命令感兴趣的可以参考 http://www.cnblogs.com/wanqieddy/archive/2011/06/09/2076785.html 。

             现在知道了shell命令,在linux c++程序中使用shell命令就可以使: system("find /home/pi/ftp/camera1 -amin -1 -type f "),如果需要将查找的结果存储起来,其中一个办法就是将结果写入txt文件中:

                system("find /home/pi/ftp/camera1 -amin -1 -type f  > result.txt"), 若想在使用命令的时候传入参数:

      使用string来转换即可:  string storeTxt= "result.txt";

                                              string command = "find /home/pi/ftp/camera1 -amin -1 -type f  >" + storeTxt;

        system(command.c_str());    //如报错,包含头文件#include 即可

                    

                 这是我写的第二篇博客,字体、格式不美观的地方欢迎大家提出,日后的博客中将会改进。






推荐阅读
author-avatar
KNN
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有