我需要一个批处理文件在每个可移动设备中创建一个文件夹“test”,而不是我插入我的电脑(pendrives等)我正在尝试这样的事情
set "extDrive="
for /f %%D in ('wmic volume get driveLetter^ where drivertype=2 ) do set extDrive=%%D
mkdir "%extDrive%\test"
有人可以告诉我为什么这不起作用?
我需要一个批处理文件在每个可移动设备中创建一个文件夹“test”,而不是我插入我的电脑(pendrives等)我正在尝试这样的事情
set "extDrive="
for /f %%D in ('wmic volume get driveLetter^ where drivertype=2 ) do set extDrive=%%D
mkdir "%extDrive%\test"
有人可以告诉我为什么这不起作用?
Answers:
'wmic volume get driveLetter ^其中drivertype = 2
您在上面的wmic
命令中有几个错误:
drivertype
应该是drivetype
。'
。where
应该来之前get
。使用以下批处理文件:
@echo off
setlocal
for /f "skip=1 tokens=1,2" %%d in ('wmic logicaldisk get caption^, drivetype') do (
if [%%e]==[2] echo mkdir %%d\test
)
endlocal
笔记:
echo
在mkdir
测试批处理文件时删除之前的内容。我有一个类型3的可移动驱动器。在下面的输出C:是一个固定的硬盘,D:是我的CD ROM驱动器,E:是一个可移动的USB记忆棒,F:是一个可移动的外部USB驱动器。
F:\test>wmic logicaldisk get deviceid, drivetype
DeviceID DriveType
C: 3
D: 5
E: 2
F: 3