本文主要是介绍批处理以当前时间为文件名创建文件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
批处理以当前时间为文件名创建文件
批处理创建空文件
有时候,需要创建以当前时间命名的文件,手动输入当然可以,但是有更省心的方法吗?
假设我是 windows 操作系统,打开命令行。
输入以下命令试试:
echo %date:~0,4%_%date:~5,2%_%date:~8,2%_%time:~0,2%_%time:~3,2%_%time:~6,2%
输出类似:
2019_06_24_22_22_13
如果不想要秒,则输入:
echo %date:~0,4%_%date:~5,2%_%date:~8,2%_%time:~0,2%_%time:~3,2%
输出类似:
2019_06_24_22_23
既然都到这一步了,那修改一下就可以达到目的了。
比如创建以日期命名的 .md 文件。
cd. >%date:~0,4%_%date:~5,2%_%date:~8,2%_%time:~0,2%_%time:~3,2%.md
这时候会发现当前目录下多了一个 2019_06_24_22_45.md
文件,而且是空文件。
上面的命令表示把命令cd.
的输出重新定向到 xxx.md 文件,cd.
表示改变当前目录为当前目录,即等于没改变,而且此命令不会有输出,所以就创建了没有内容的空文件。
其实创建空文件的方法还有很多:
1、copy nul a.txt
nul表示空设备,从概念上讲,它不可见,存在于每个目录中,可以把它看成一个特殊的“文件”,它没有内容;此例子表示将空设备复制到 a.txt,同样创建了没有内容的空文件。
2、type nul>a.txt
此例子表示显示空设备的内容,并写入到 a.txt。
3、echo a 2>a.txt
“2”表示错误输出的句柄,此例中没有错误输出,所以创建了没有内容的空文件。
其实“>”默认重定向到句柄1,即标准输出句柄。比如 cd.>a.txt
,其实就是cd. 1>a.txt
。
其实,句柄3到9也可以使用在本例中,它们是未经定义的句柄,也不会有输出,如
echo a 3>a.txt
咱们实操一下。
D:\>copy nul a.txt
已复制 1 个文件。D:\>type nul>b.txtD:\>echo a 2>c.txt
aD:\>echo a 3>d.txt
a
根据上面的实验,type nul>b.txt
这个方法比较好,因为命令行没有输出,很清爽。
参考资料
-
批处理以当前时间为文件名创建指定格式文件
-
建立空文件的几种方法
这篇关于批处理以当前时间为文件名创建文件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!