不知道USB在CMD中的目的地

时间:2014-03-09 01:06:46

标签: batch-file cmd xcopy autorun

我正在尝试使用批处理文件(.bat)将文件从USB驱动器自动复制到PC

我知道我可以做那样的事情

xcopy "C:\xxxx\xxxx\xxxx.xxx" "C:\xxxx\xxx\xxxx\xxx.exe" /E /H /I

但我遇到了一个小问题......

如果我不知道插入USB的驱动器的确切字母怎么办?我如何自动复制这些文件?如果可以,有人可以将简单的“xcopy”命令从USB发送到PC。

谢谢!

3 个答案:

答案 0 :(得分:3)

您可以将通用文件添加到USB驱动器的根目录,以便测试它以发现USB驱动器的驱动器号吗?例如,如果您在USB驱动器的根目录中创建了一个名为USBDrive1的文件,则可以执行以下操作:

for %%i in (D E F G H I J K L M N O P Q R S T U V W X Y Z) do if exist %%i:\USBDrive1 set USBDrive=%%i

然后,您可以在批处理文件的其余部分使用%USBDrive%作为驱动器号。像这样:

xcopy %USBDrive%:\*.* C:\Some\Path ...

答案 1 :(得分:2)

使用以下语法将批处理文件放入USB驱动器中:

 xcopy %~d0\folder\*.* c:\target\   /E /H /I

答案 2 :(得分:1)

这应该有效:

set "USBDrive="
for /F "tokens=1,2" %%a in ('wmic logicaldisk get DeviceID^,DriveType') do if %%b equ 2 set USBDrive=%%a
if not defined USBDrive (
   echo USB not connected
) else (
   echo USB on drive %USBDrive%
)