批处理获取某路径下最新创建的文件的名称

by:授客 QQ1033553122

echo off
setlocal enabledelayedexpansion

rem
设置文件所在目录

set src_dir=F:\Download\test

rem filename用于存放目标文件名

set filename=""

cd /d %src_dir%
for /f %%a in ('dir /o-d /tc /b test*.html') do (
    echo

文件完整信息:
%%a
    set
filename=%%~na%%~xa
    echo

文件名:
!filename!,
最新创建时间:
%%~ta
    if not
!filename! == ""  (
  
    
goto iconv
    )
)

:iconv
iconv -f gbk -t utf-8 %filename% >
"jenkins_test_report.html"
pause

说明:

setlocal enabledelayedexpansion:开启本地环境变量延迟

扩展阅读:
批处理运行命令的机制:批处理读取命令时是按行读取的(对于for命令等,其后用一对圆括号闭合的所有语句也当作一行),在处理之前要完成必要的预处理工作,这其中就包括对该行命令中的变量(%var_name%)赋值。开启本地环境变量延迟后,在读取了一条完整的语句之后,不立即对该行的变量赋值,而是在执行某个单条语句之前再对变量进行赋值,也就是说“延迟”了对变量的赋值。开启本地环境变量延迟后,原有变量的界定符由

"%"
改成"!"

for循环语法

for /f %variable IN ('command') DO command
[command-parameters]

dir /o-d /tc /b test*.html:按文件创建时间降序显示test开头的.html文件

dir命令选项

/b

使用空格式(没有标题信息或摘要)。

/o

用分类顺序列出文件。
排列顺序:d

按日期/时间(从先到后)

反转顺序的前缀

/t

控制显示或用来分类的时间字符域。

创建时间a

上次访问时间 

上次写入的时间

例:

dir /od:按日期/时间升序显示

dir /o-d:按日期/时间降序显示

dir /tw: 
时间列输出为修改时间(默认)

if not !filename! == ""  (
    goto
iconv
)
如果变量filename不为空,则表示取到了值,

goto iconv
跳转到iconv标签,继续执行标签后的语句

%%a:文件完整信息

%%~da:文件所在驱动器信息

%%~pa:文件所在路径信息

%%~na:文件名信息

%%~xa:文件后缀信息

%%~za:文件大小信息

%%~ta:文件修改时间信息

%%~dpa:文件所在驱动器和所在路径信息

%%~nxa:文件名及后缀信息

%%~pnxa:文件所在路径及文件名和后缀信息

%%~dpna:文件驱动器、路径、文件名信息

%%~dpnxa:文件驱动器、路径、文件名、后缀信息

rem
注释语句

常见问题:

cmd中的编码方式为ANSI,如果中文不是此编码方式则会出现乱码。

解决方法:编辑批处理文件时,以ANSI方式编辑即可(windows自带的记事本保存文件时即可选择编码方式为ANSI)

Windows 批处理获取某路径下最新创建的文件的名称的更多相关文章

  1. SQL:获取每个key下最新创建的记录

    今天遇到了一个好玩的问题 问题: 有一个含有key和createdTime字段的表,表里存在很多不同的key值,每个key值下有很多记录. 我想要查出每个key下面cratedTime最大的记录,即每 ...

  2. windows程序设计 获取系统文件路径

    获取系统文件路径,打印到txt文件中. #include <windows.h> int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hP ...

  3. Windows 定时删除指定路径下N天前的日志文件

    Windows 定时删除指定路径下N天前的日志文件 Windows 下bat脚本文件的内容为 1. 删除指定路径下5天前的所有文件 @echo off set SrcDir=E:\WORK\Git s ...

  4. spring boot 打jar包,获取resource路径下的文件

    前言:最近在spring boot项目静态类中获取resource路径下文件,在idea中启动都可以获取,但是打包后变成了jar包 就无法获取到. 我想到了两种方法,一种是根据http访问静态资源比如 ...

  5. Java 递归获取一个路径下的所有文件,文件夹名称

    package com.readfile; import java.io.File; public class GetAllFiles { public static void main(String ...

  6. Python获取指定路径下所有文件的绝对路径

    需求 给出制定目录(路径),获取该目录下所有文件的绝对路径: 实现 方式一: import os def get_file_path_by_name(file_dir): ''' 获取指定路径下所有文 ...

  7. JavaWeb学习——获取类路径下的资源

    对于JavaWeb而言,获取类路径下的资源,就是获取classes目录下的资源. 获取资源的方式有两种,利用Class或ClassLoader. Class类的getResourceAsStream( ...

  8. C#中获取指定路径下特定开头和后缀的所有文件

    场景 指定一个文件路径,获取当前路径下所有文件,并筛选出以指定内容开头和结尾的文件. 注: 博客主页: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 ...

  9. java 获取某路径下的子文件/子路径

    /** * 获取某路径下的子文件 * */ public static List<String> getSubFile(String path){ List<String> s ...

随机推荐

  1. 哈尔特征Haar

    哈尔特征(Haar-like features) 是用于物体识别的一种数字图像特征.它们因为与哈尔小波转换 极为相似而得名,是第一种即时的人脸检测運算. 历史上,直接使用图像的强度(就是图像每一个像素 ...

  2. 【app】adb连接问题整理

    如果使用adb devices进行检测,发现没有任何设备信息,我们就需要检查是否有手机/模拟器连接上 如果是手机进行连接,windows右下角有出来如下提示的话,需要检查你的手机驱动是否有安装好 如果 ...

  3. 给大家一些改善 Python 程序的 91 个建议

    读了一本还不错的书「编写高质量代码改善 Python 程序的 91 个建议」,大多数的建议是真心不错,我虽然写python也有3年多了,但是有些地方确实没去注意过,特地整理了一下,给大家参考. 我已经 ...

  4. ionic cordova platform add android Cordova failed to install plugin Error: ENOENT: no such file or directory AndroidManifest.xml

    问题描述: 在ionic 项目中出现编译android 的时候 出现 Cordova failed to install plugin  Error: ENOENT: no such file or ...

  5. oracle批量去掉字段值空格

    --查询验证 select ltrim(col1) from t1; --去掉字段值左边空格update t1 set col1=ltrim(col1); --去掉字段值右边空格update t1 s ...

  6. IdentityServer Resource Owner Password

    Resource Owner Password 模式需要自己实现用户名密码的校验 新增ResourceOwnerPasswordValidator实现IResourceOwnerPasswordVal ...

  7. mysql 开发进阶篇系列 49 表的数据导出(into outfile,mysqldump)

    一.概述 在数据库的日常维护中,表的导入和导出是很频繁的操作,本篇讲解如何使用导入功能,并以案例为演示.某些情况下,需要将表里的数据导出为某些符号分割的纯数据文本,而不是sql语句,比如:(1)用来作 ...

  8. java各种集合的线程安全

    微信公众号[程序员江湖] 作者黄小斜,斜杠青年,某985硕士,阿里 Java 研发工程师,于 2018 年秋招拿到 BAT 头条.网易.滴滴等 8 个大厂 offer,目前致力于分享这几年的学习经验. ...

  9. Java 容器源码分析之 LinkedList

    概览 同 ArrayList 一样,LinkedList 也是对 List 接口的一种具体实现.不同的是,ArrayList 是基于数组来实现的,而 LinkedList 是基于双向链表实现的.Lin ...

  10. python捕获Ctrl+C信号

    我们希望当服务器接收到一个 SIGTERM 信号时能够自动关机,或者做一些善后的操作,以下是实现的方法 import signal # 自定义信号处理函数 def my_handler(signum, ...