【问题标题】:understanding xcopy command理解 xcopy 命令
【发布时间】:2014-02-14 08:57:15
【问题描述】:

我正在修改批处理脚本以将目录从一个地方移动到另一个地方。在批处理代码中,有这两行。我不明白前几部分

echo xcopy %SOURCE_FILE% %TARGET_FILE% /Y /Z /C /F 1>>"%logfile%" 2>&1

echo F|xcopy %SOURCE_FILE% %TARGET_FILE% /Y /Z /C /F 1>>"%logfile%" 2>&1

  1. 这些代码行是执行复制还是仅写入日志文件?我问这个是因为代码当前正在复制,但是没有前面没有 echo 的 xcopy 行。
  2. 在第二行中,F|xcopy 是什么意思?
  3. 除了第二行的F|xcopy,两者有什么区别?

【问题讨论】:

    标签: batch-file xcopy


    【解决方案1】:
    1. 只是报告要做什么。最好使用/L 开关xcopy

    2. echo f| 表示用“f”回复潜在提示。提示将是“目标是目录还是文件”,响应是“文件”

    3. 第一个只报告,第二个执行。

    【讨论】:

    • 回应3:如果第一个在等待“f”却一直没有得到,是不是超时继续第二个?
    • 否 - 它等待响应。这可能有点像游戏,因为提示可能会重定向到文件。
    【解决方案2】:

    |是一个管道符号。它将之前命令的输出传递给之后的命令。

    所以echo F(即F)的结果到xcopy-command。因此,如果 xopy 要求用户输入,它会得到“F”。

    简单示例:

    echo . | pause
    

    试一试,pause 等待击键,但 echo . 传递此击键。

    【讨论】:

      【解决方案3】:

      第一个将要执行的命令写入日志文件,但没有任何用处。

      第二个实际执行 XCOPY,但回答了用字母“F”提出的问题,大概是当 XCOPY 询问“您是指文件还是目录?”时。

      【讨论】:

      • 一个后续问题:所以,我正在复制一个包含其他目录和文件的目录,并使用 |F 复制所有这些目录和文件?
      • 它的作用与键入没有“ECHO F |”的 XCOPY 命令完全相同并按 Enter,然后在被问到问题时按一次“F”(后跟 Enter)。
      • 这回答了您的问题吗?如果是这样,您能否接受我的回答,以便我得到一个可爱的绿色大勾号?否则,请说出什么不起作用,以便我(和其他人)可以进一步帮助您。
      • 我将在成功运行脚本后做出决定。现在我正试图从一个 java 程序中执行它,但并不太成功。
      • 我现在使用 xcopy S:\%FOLDER% T:\%FOLDER% /E /I /H 复制所有子目录。感谢您的帮助
      猜你喜欢
      • 2010-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-21
      • 1970-01-01
      • 2023-02-16
      相关资源
      最近更新 更多