Batch file 来自管道批处理文件的自定义输出文件名
使用>将命令输出管道化到文件时,是否有方法使输出文件名为动态文件名 简单例子 c:\systeminformation>\servername\share\sysinfo.txt(输出文件名为sysinfo.txt,可以重写,也可以使用>>追加)Batch file 来自管道批处理文件的自定义输出文件名,batch-file,Batch File,使用>将命令输出管道化到文件时,是否有方法使输出文件名为动态文件名 简单例子 c:\systeminformation>\servername\share\sysinfo.txt(输出文件名为sysinfo.txt,可以重写,也可以使用>>追加) 我是否可以添加一个命令来提供唯一的输出文件名?如果没有其他内容,可能是DTS stamp.txt格式?这样,输出文件名是唯一的 是的,基本上只需将文件名放入变量中即可 set "var=\servername\share\sysinfo.txt" wh
我是否可以添加一个命令来提供唯一的输出文件名?如果没有其他内容,可能是DTS stamp.txt格式?这样,输出文件名是唯一的 是的,基本上只需将文件名放入变量中即可
set "var=\servername\share\sysinfo.txt"
whatevercommand >"%var%"
除此之外,你的问题太模糊了。在某些特殊情况下,这种技术需要改变(但我想您需要
\\servername\…
)如果符合您的目的,您可以将日期和时间动态附加到文件名
例如:
set dynamicFname=sysinfo_%date:~4,2%_%date:~7,2%_%date:~10%_%time:~0,2%_%time:~3,2%.txt
c:\systeminformation > \servername\share\%dynamicFname%
设置dynamicFname=sysinfo\u%date:~4,2%\u%date:~7,2%\u%date:~10%\u%time:~0,2%\u%time:~3,2%.txt
c:\systeminformation>\servername\share\%DynamicName%
结果文件名如下所示:
sysinfo_04_11_2014_16_44.txt
sysinfo_04_11_2014_16_47.txt
04=月,11=日,2014=年,16=24小时格式,44=分钟
请注意,每次要更新变量“dynamicFname”中存储的日期/时间时,都需要运行set命令
该解决方案受以下url启发:
或
你能详细说明你的答案吗?键入set/?对于这两个命令的文档(尽管第一个命令没有使用set,但仍然在那里进行了文档记录)。首先是一个随机数。第二个是带有斜杠的日期,在文件名中是非法的,用下划线代替。多亏了所有回答我问题的人,“DoubleM”的回答非常准确。它工作得很好。
c:\systeminformation > \\servername\share\sysinfo%random%.txt
set name=%date:/=_%
c:\systeminformation > \\servername\share\sysinfo%name%.txt