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

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. 神经网络架构PYTORCH-宏观分析

    基本概念和功能: PyTorch是一个能够提供两种高级功能的python开发包,这两种高级功能分别是: 使用GPU做加速的矢量计算 具有自动重放功能的深度神经网络从细的粒度来分,PyTorch是一个包 ...

  2. stc15f104w模拟串口使用

    stc15f104w单片机体积小,全8个引脚完全够一般的控制使用,最小系统也就是个电路滤波----加上一个47uf电容和一个103电容即可,但因为其是一个5V单片机,供电需要使用5V左右电源. 该款单 ...

  3. Vue 中是如何解析 template 字符串为 VNode 的?

    在接触 React 时候,我只了解到通过 babel 可以把 JSX 转成 VNode(通过调用 React.createElement 方法),但是对其具体是如何转换的却不了解. 很明显,回答失败. ...

  4. mysql 开发基础系列15 索引的设计和使用

    一.概述 所有mysql 列类型都可以被索引,是提高select查询性能的最佳方法. 根据存储引擎可以定义每个表的最大索引数和最大索引长度,每种引擎对每个表至少支持16个索引,总索引长度至少为256字 ...

  5. HDU 1006 Tick and Tick 时钟指针问题

    Tick and Tick Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Tot ...

  6. 将Long类型字节大小数据转换成标准的视频大小格式

    很多时候针对视频信息,数据库中存储的视频大小是字节类型,然后我们在页面中显示则需要使用的是标准的视频大小显示格式,我这里工具类最多显示的是Mb,如果需求要显示G的话可自行参照修改. 直接上工具类和测试 ...

  7. shell高效处理文本(1):xargs并行处理

    xargs具有并行处理的能力,在处理大文件时,如果应用得当,将大幅提升效率. xargs详细内容(全网最详细):https://www.cnblogs.com/f-ck-need-u/p/592592 ...

  8. Perl文件测试操作和stat函数

    在shell中通过test命令或者中括号[]可以进行文件测试以及其它类型的测试,例如判断文件是否存在,比较操作是否为真等等.perl作为更强大的文本处理语言,它也有文件测试类表达式,而且和shell的 ...

  9. 举例分析 Makefile 中的 patsubst、wildcard、notdir 函数

    函数简介: 1.wildcard : 扩展通配符 2.notdir :去除路径 3.patsubst :替换通配符 实例: 建立一个 test 目录,在测试目录下建立一个名为 sub 的子目录 $ m ...

  10. js引用值传递改变问题(使用深拷贝)

    //当我们定义一个全局变量,然后页面加载时进行一次赋值. //后面对加载的对象进行push后全局变量改变了,这是由于引用类型的问题,此时使用深拷贝进行保存原来的数据 //深拷贝 function de ...