zoukankan      html  css  js  c++  java
  • Bat脚本学习-3:按修改时间倒序列出最新10条文件

    每次部署升级系统时,都不知道上次升级是什么时候,尝试弄个bat脚本。本想练练python的,但服务器还要每台去装python,bat能实现就先用bat吧

    @echo off
    setlocal enabledelayedexpansion
    set count = 0
    dir /a-d /o-d /s |sort /r >>TmpSort.txt
    For /f "delims=" %%i in (TmpSort.txt) DO (
        set /a count += 1
        if !count! GTR 2 if !count! LEQ 12 echo %%i
    )
    echo y |del TmpSort.txt
    pause

    弄了一晚,文件搜索按时间排序是容易找到,递归处理子文件夹也是可以,但排序是单独按每个文件夹来处理的。

    后来找了一篇,先把搜索结果存到临时文本里,再从文本里读出来,最后删除文本(如果是用python实现的话,就不用临时文本了,弄个数组之类的应该就可以)

    1、要在循环中使用变量,要setlocal enabledelayedexpansion,并且用 !变量! 这种形式使用

    2、dir:

    /a表示属性,-d表示非文件夹

    /o表示排序,-d表示按时间倒序

    /s表示所有子文件夹

    3、sort

    使用 | 来把结果传给管道,sort /r 表示倒序,这样才能按时间倒序排列

    4、echo y | del ,直接删除临时文件不提示

    5、只能显示文件名,不能显示完整路径,也不能去掉文件大小,先这样吧,也够用了,要高级功能的话,改天可以拿python重写一个

  • 相关阅读:
    css3 flex
    多行文本溢出 显示... 判断是否多行文本溢出
    事件多次执行
    WinForm布局
    winform 公共控件
    WinForm窗体菜单和工具栏
    2017-4-24WinForm 基础
    2017-4-20实体类,数据访问类.字符串攻击.防攻击
    ADO.net增删改查
    类库,通用变量,is/as运算符,委托。
  • 原文地址:https://www.cnblogs.com/liuyouying/p/6671393.html
Copyright © 2011-2022 走看看