一些批处理文件问题

时间:2011-02-08 19:17:31

标签: batch-file batch-processing

我有3个关于批处理文件主题的问题。

首先,我想在文件名YYYYMMDDHHMM附加以下内容 - 如何在bat文件中获取此值?

其次,使用XCOPY如何在不提示用户输入的情况下将文件移动到子文件夹?

最后,我在我的bat文件中有很多动作,所以想要实现一些错误处理即。如果第一个操作失败,则中止休息并向用户显示消息。关于我如何做到这一点的任何提示?

提前致谢。

1 个答案:

答案 0 :(得分:0)

  1. 以区域设置中立格式获取当前日期和时间的最简单方法是wmic os get LocalDateTime

    for /f "skip=1" %%d in ('wmic os get localdatetime') do if not defined MyDate set MyDate=%%d
    rem Only leave date, hours and minutes
    set MyDate=%MyDate:~0,12%
    
  2. xcopy有一个/i开关:

    /I           If destination does not exist and copying more than one file,
                 assumes that destination must be a directory.
    

    如果不适用,则可以使用copyrobocopy甚至可以允许更细粒度的控制。

  3. 只需检查每个命令是否成功:

    if errorlevel 1 goto error
    

    并将以下内容放在批处理文件的末尾:

    goto :eof
    :error
    echo An error occurred.
    exit /b 1