【问题标题】:Xcopy change source folder if doesn't exist如果不存在,Xcopy 更改源文件夹
【发布时间】:2015-12-17 14:11:01
【问题描述】:

我做 Xcopy 没有任何问题,但源文件夹可能不是指定的文件夹。它可能是三个文件夹之一。

所以我想要一个继续

set sourcefolder = "folder1"
if not exist set sourcefolder = "folder2"
if not exist set sourcefolder = "folder3"
if not exist exit

但是我是脚本的新手,所以如果有人可以帮助我,我会很高兴。

【问题讨论】:

    标签: batch-file if-statement directory xcopy


    【解决方案1】:

    您的代码中存在一些问题:

    • set 命令行中在= 周围放置空格,因为set sourcefolder = pathSPACEpath 分配给变量sourcefolder空间;
    • 使用set语法set "sourcefolder=C\MyFolder";引号"" 不会 成为此处变量值的一部分,因此请在扩展(读取)"%sourcefolder%" 等变量时放置它们;
    • if not exist 之后,您需要指定要检查的内容,例如if not exist "%sourcefolder%"
    • 要结束批处理文件,请使用exit /B 而不是exit,因为后者也会终止命令提示符 (cmd) 实例;

    这里是固定代码:

    set "sourcefolder=C:\MyFolder"
    if not exist "%sourcefolder%" set "sourcefolder=D:\MyFolder"
    if not exist "%sourcefolder%" set "sourcefolder=E:\MyFolder"
    if not exist "%sourcefolder%" (
        echo Could not find a valid source folder.
        exit /B
    )
    xcopy /E /I /Y "%sourcefolder%" "V:\Save\"
    

    【讨论】:

    • 非常感谢 aschipfl 的解决方案和提示!!
    • 不客气!因此,如果我的回答对您有所帮助,请考虑投票和/或接受它...谢谢!
    猜你喜欢
    • 1970-01-01
    • 2011-08-06
    • 1970-01-01
    • 1970-01-01
    • 2014-01-08
    • 2020-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多