IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    阅读、理解、执行

    酷特尔发表于 2015-03-23 14:04:37
    love 0

    人生就像是在做无数的阅读理解题,完成一件事的前提,很大一部分首先是需要阅读理解,包括在直接听某人说,或者看某人写道。总之,完成一件事,首先会有多种各式各样的输入形式进行输进人的大脑。然后大脑做理解(翻译)将得到的拿去执行。所以,不管在生活或者工作亦或者是学习中,阅读理解都是人非常重要而且需要必配的能力。废话这么多....

    update your backup data没有想到还会接触到windows下cmd中的这个功能----forfiles。help_cmd_forfiles。这个命令的功能想是很多语言中的历遍功能。这是一个历遍查找某个/某类文件功能的命令。在windows自动备份/删除N天前类型的文件用得尤其广泛,也确实是很方便用。参数不多,就不再赘述。主要来看看forfiles中/C参数,这是forfiles调用WinNT中CMD命令的一个参数,格式为:

    forfiles /c "cmd /c [start command  in here]"

    看前面的格式,调用的命令是从引号中的cmd /c 以后开始。例如:

    FORFILES /S /M *.doc /C "cmd /c echo @fsize"

    echo @fsize 这个是执行的命令,这里有几个参数返回值,返回值是取自符合forfiles筛选条件的文件,下面是说明:

                            默认命令是 "cmd /c echo @file"。下列变量
                            可以用在命令字符串中:
    
                            @file    - 返回文件名。
                            @fname   - 返回不带扩展名的文件名。
    
                            @ext     - 只返回文件的扩展名。
    
                            @path    - 返回文件的完整路径。
                            @relpath - 返回文件的相对路径。
    
                            @isdir   - 如果文件类型是目录,返回 "TRUE";
                                       如果是文件,返回 "FALSE"。
                            @fsize   - 以字节为单位返回文件大小。
    
                            @fdate   - 返回文件上一次修改的日期。
    
                            @ftime   - 返回文件上一次修改的时间。

    下面是一个删除12天前的备份示例:

    @echo off
    rem Record My backup log...
    if not exist D:\del_files.log start cd .>D:\del_files.log
    echo **Delete Expired Log Files![%date:~0,10% %time:~0,8%]**>>
    D:\del_files.log
    forfiles /p d:\test\ /m *.* /d -12 /c "cmd /c del @path @fsize>>del_files.log"
    echo -----Delete done! [%date:~0,10% %time:~0,8%]----->>
    D:\del_files.log
    echo -------------------------------------------->>
    D:\del_files.log
    exit

    上面没有使用太多变量,可以使用变量来替换同一字符串来减少编写错误。



沪ICP备19023445号-2号
友情链接