批处理文件将文件从 USB 复制到 C: 然后 运行 从 c:\temp 复制另一个批处理文件

batch file to copy files to C: from USB then run another batch file from c:\temp

对于我的工作,我安装软件并使用批处理文件对其进行配置;设置文件夹权限,从服务器共享复制配置文件以使其工作等。所有这些都很好,我一直在使用从这里获得的东西一段时间没有问题。我必须在多台计算机上执行此操作,有时在 link 速度太慢的地方需要很长时间才能 运行 服务器共享的所有内容。

我制作了一个批处理文件,让我可以在网络安装过程或从 USB 之间进行选择,以真正加快速度。但是,我现在面临着等待一切从 USB 完成安装,然后才能转到下一台 PC。许多 PC 的速度非常慢,所以我最多可以等待 10 分钟。我希望能够从 USB 运行 批处理文件,然后将软件安装程序和相关文件复制到 C:\Temp(或类似文件),然后从 C:\Temp(和运行s 来自该目录)。最终结果是我可以插入 USB,运行 初始副本到 C:\Temp bat 文件,从 C:\Temp 调用的批处理文件然后安装而不是 USB 允许我删除 USB 并获得继续使用下一台 PC,而无需等待过程从 USB 完成。

我在我的 PC 上取得了一些成功 windows 10(我假设在 7、8 等情况下可以正常工作)但是在 XP 上(在我的工作中,它仍然比你收获更多' d 认为)当我移除 USB 记忆棒时,由于某种原因,该过程被破坏了,即使我在新的 window 中调用 C:\Temp bat 安装程序,新的 window 仍然保留事实上它来自 USB,因此除非我将 USB 留在其中,否则它不会完成。这当然不是我想要的。也许有更好的方法我确定,我只需要一个适用于所有 XP、7、8 等的解决方案。你可以看到,我只是将一些东西复制到 C:\Temp 然后选择我需要的 bat 安装程序时间,然后(尝试)并从 C:\Temp 启动适当的蝙蝠 运行ning 而不是 USB 让我继续前进而不必等待。希望有人能指教。非常感谢!!

这是从USB复制到C:\Temp的bat

if not exist C:\Temp md C:\Temp
echo F| XCOPY %~dp0silentinstall.exe /y  C:\Temp
xcopy /herky %~dp0GUIDES C:\Temp\Guides /i
echo   1 -- Standard
echo   2 -- DelR2
echo   3 -- FullWipeInstall
echo;
set /P rmFunc="Enter a choice: "
echo --------------------------------------------------------------------
for %%I in (1 2 3 4 5 x) do if #%rmFunc%==#%%I goto run%%I
goto begin
:run1
echo F| XCOPY %~dp0Standard /y C:\Temp
cd C:\Temp
call cmd /c Standard.bat
exit
:run2
echo F| XCOPY %~dp0DelR2.bat /y C:\Temp
cd C:\Temp
call cmd /c "DelR2.bat"
exit
:run3
echo F| XCOPY %~dp0"FullWipeInstall.bat" /y C:\Temp
cd C:\Temp
call cmd /c "FullWipeInstall.bat"
exit

您的 bat 文件位于 USB 上。因此,如果 USB 被移除,它无法加载退出语句。我怀疑您很幸运它可以在某些 OS 上运行,因为除了退出之外别无他法。如果不进行测试,可能有几种修复方法: 1. 用合适的 START 命令替换这两行,然后退出。请参阅开始 /?

cd C:\Temp
call cmd /c "FullWipeInstall.bat"
  1. 像这样把调用的出口和出口放在同一行

    调用 cmd /c "FullWipeInstall.bat" & 退出