Windows 批处理获取某路径下最新创建的文件的名称
by:授客 QQ:1033553122
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
控制显示或用来分类的时间字符域。
c
创建时间a
上次访问时间
w
上次写入的时间
例:
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 批处理获取某路径下最新创建的文件的名称的更多相关文章
- SQL:获取每个key下最新创建的记录
今天遇到了一个好玩的问题 问题: 有一个含有key和createdTime字段的表,表里存在很多不同的key值,每个key值下有很多记录. 我想要查出每个key下面cratedTime最大的记录,即每 ...
- windows程序设计 获取系统文件路径
获取系统文件路径,打印到txt文件中. #include <windows.h> int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hP ...
- Windows 定时删除指定路径下N天前的日志文件
Windows 定时删除指定路径下N天前的日志文件 Windows 下bat脚本文件的内容为 1. 删除指定路径下5天前的所有文件 @echo off set SrcDir=E:\WORK\Git s ...
- spring boot 打jar包,获取resource路径下的文件
前言:最近在spring boot项目静态类中获取resource路径下文件,在idea中启动都可以获取,但是打包后变成了jar包 就无法获取到. 我想到了两种方法,一种是根据http访问静态资源比如 ...
- Java 递归获取一个路径下的所有文件,文件夹名称
package com.readfile; import java.io.File; public class GetAllFiles { public static void main(String ...
- Python获取指定路径下所有文件的绝对路径
需求 给出制定目录(路径),获取该目录下所有文件的绝对路径: 实现 方式一: import os def get_file_path_by_name(file_dir): ''' 获取指定路径下所有文 ...
- JavaWeb学习——获取类路径下的资源
对于JavaWeb而言,获取类路径下的资源,就是获取classes目录下的资源. 获取资源的方式有两种,利用Class或ClassLoader. Class类的getResourceAsStream( ...
- C#中获取指定路径下特定开头和后缀的所有文件
场景 指定一个文件路径,获取当前路径下所有文件,并筛选出以指定内容开头和结尾的文件. 注: 博客主页: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 ...
- java 获取某路径下的子文件/子路径
/** * 获取某路径下的子文件 * */ public static List<String> getSubFile(String path){ List<String> s ...
随机推荐
- MD5( 信息摘要算法)的概念原理及python代码的实现
简述: message-digest algorithm 5(信息-摘要算法).经常说的“MD5加密”,就是它→信息-摘要算法. md5,其实就是一种算法.可以将一个字符串,或文件,或压缩包,执行md ...
- Ubuntu 18.04基本配置
允许WinSCP使用root连接 默认是不允许的,具体方法出自这里(传送门),修改ssh配置,在/etc/ssh下,修改sshd_config文件 PermitRootLogin yes 即可.默认不 ...
- Spring Boot(八):RabbitMQ 详解
RabbitMQ 即一个消息队列,主要是用来实现应用程序的异步和解耦,同时也能起到消息缓冲,消息分发的作用. 消息中间件在互联网公司的使用中越来越多,刚才还看到新闻阿里将 RocketMQ 捐献给了 ...
- iReport 5.6.0 组件面板为空 get小技巧
问题描述 本人使用的是iReport 5.6.0版本,正常安装,打开后,创建了一个报表实例,但是,菜单栏--> 工具--> 组件面板 为空.效果如下: 这就尴尬了,没有组件面板,还怎么绘制 ...
- wamp解决ajax跨域问题
若使用ajax测试本地数据时,遇到的跨域问题,如 因为ajax只能用于请求服务器的数据,而在本地测试,打开的文件是以 file:// 的形式, 所以报错 可以通过 nginx 建立反向代理,处理静态文 ...
- Linux常用命令英文全称与中文解释
man: Manual 意思是手册,可以用这个命令查询其他命令的用法. pwd:Print working directory 意思是密码. su:Swith user 切换用户,切换到root用户 ...
- NuGet包和功能
Microsoft.AspNetCore.Razor.Tools:提供TagHelper的智能感知提示和代码加粗高亮显示. Microsoft.AspNetCore.Session:管理会话状态的中间 ...
- centos7编译linux的内核源码
昨天编译了一个linux 内核源码,遇到一些问题, 今天把我遇到的问题和解决方法分享给大家.希望可以帮助到需要的人. 1.检查是否安装了相应的包 我第一次编译的时候只安装的“Development T ...
- java for循环里面执行sql语句操作,有效结果只有一次,只执行了一次sql mybatis 循环执行update生效一次 实际只执行一次
java后台controller中,for循环执行数据库操作,但是发现实际仅仅执行了一次,或者说提交成功了一次,并没有实际的个数循环 有可能是同一个对象导致的 可以仔细看一下下面两段代码有什么区别 p ...
- Go Web:处理请求
处理请求 Request和Response http Requset和Response的内容包括以下几项: Request or response line Zero or more headers ...