批处理文件将文本作为日期和时间保存在新文件夹中

时间:2015-07-24 15:22:26

标签: date batch-file time save

我有一个打开PDF并选择所有文本的批处理文件,然后复制它然后将其粘贴到一个新的空白文本文档中。 PDF和文本文档与批处理文件位于同一文件夹中,因为我需要能够将其提供给其他人。我需要将文本文档保存到一个新文件夹,其中包含当前日期和时间的名称,以防止重复的名称。

[code]
@echo off
start PP15ShirazTimesheet.pdf
timeout 5 > NUL
start select.vbs
start copy.vbs
timeout 5 > NUL
type NUL > EmptyFile.txt
start EmptyFile.txt
start paste.vbs
[/code]

这是我到目前为止,vbs文件只是sendkeys。所以我的问题是,如何将文本文件保存在一个新的文件夹中,日期和时间作为名称?我在月球上寻找简单的解决方案。 谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

尝试下一个代码段:

@ECHO OFF >NUL
SETLOCAL enableextensions
for /F %%g in ('
  wmic OS get LocalDateTime /value^|findstr "="
  ') do for /F %%G in ("%%g") do set "_%%G"
echo %_LocalDateTime:~0,14%
MKDIR %_LocalDateTime:~0,14%\
type NUL > %_LocalDateTime:~0,14%\EmptyFile.txt
start %_LocalDateTime:~0,14%\EmptyFile.txt

此处for循环

  • %%g检索LocalDateTime值;
  • %%G删除返回值中的结尾回车wmic行为:每个输出行以0x0D0D0A结尾,而不是公共0x0D0A })。

见Dave Benham的WMIC and FOR /F: A fix for the trailing <CR> problem

修改

  

代码效果很好,除了它创建一个新文件夹而不是   将文件重命名为现有文件夹。

echo %_LocalDateTime:~0,14%
rem MKDIR %_LocalDateTime:~0,14%\
type NUL > %_LocalDateTime:~0,14%.txt
start %_LocalDateTime:~0,14%.txt

type NUL > EmptyFile.txt
start EmptyFile.txt
start "" /W paste.vbs
RENAME EmptyFile.txt %_LocalDateTime:~0,14%.txt