2015-04-13 3 views
1

Я хочу выполнить команду multi, чтобы узнать букву «Диск» на USB, которая имеет имя «Knowhow», а затем использовать ответ для выполнения других команд.Выясните письмо на USB

for /f "delims=" %%l in ('WMIC Path Win32_volume where "Label='knowhow'" Get DriveLetter /format:list') do >nul 2>&1 set "usb_%%l" 

xcopy /s /y /d %SystemVolume_usb%\*.* c:\test 

Это я хочу сделать в 1 линии, и я испытал & и & & и; и так далее, но не может это получить.

ИЛИ есть ли другой способ i java, чтобы узнать букву USB?

String filePath = "E:\\Copy.bat"; 
    try { 

     Process p = Runtime.getRuntime().exec(filePath); 

    } catch (Exception e) { 
     e.printStackTrace(); 
    } 

}        

Это работает, когда я, но команды в пакетном файле, единственная проблема в том, что я должен Typ E: \ и это еще не то же самое письмо на каждом компьютере.

Надеется, что вы можете помочь

----- UPDATE ------- Сегодня мой USB выглядит следующим образом F: \ App_java Если я, но мой пакетный файл в той же директории. (App_java) и запустите это:

String Command = "Copy.bat"; 

Он выполнит файл bat. Но вопрос в том, будет ли это делать, когда я сделаю это приложение.

+0

Этот сценарий работает на внешнем диске или на локальном компьютере? [здесь] (http://stackoverflow.com/questions/21220548/associate-usb-label-with-usbdevice-usb4java) - это вопрос, который, я думаю, поможет вам. – CalebB

+0

сценарий (программа) будет работать на том же USB-диске. –

+0

Вы можете попробовать использовать варианты в ответ на [этот вопрос] (http://stackoverflow.com/questions/4362786/getting-the-default-root-directory-in-java). Один из них работает на вас? – CalebB

ответ

0

Попробуйте эту партию и скажите, был ли этот код трюком или нет?

@echo off 
Mode con cols=98 lines=10 & Color 9E 
Title Searching the Drive letter of your USB Key by Hackoo 2014 
echo. 
ECHO ******************************************************************************************* 
echo. 
echo       Searching the drive letter of your USB Key ....... 
echo. 
ECHO ******************************************************************************************* 
wmic logicaldisk get DeviceID,DriveType /Format:CSV > %Tmp%\tmp.txt 
for /f "skip=2 tokens=1-3 delims=," %%a in ('%COMSPEC% /a /c type "%Tmp%\tmp.txt"') do echo %%b %%c >> %Tmp%\tmp2.txt 
for /f "tokens=1" %%i in ('%COMSPEC% /a /c type "%Tmp%\tmp2.txt" ^|Find "2"') Do (set MyUSBDrive=%%i) 
Del %Tmp%\tmp.txt & Del %Tmp%\tmp2.txt 
cls 
echo. 
ECHO ******************************************************************************************* 
echo. 
echo       The drive letter of your USB Key is %MyUSBDrive% 
echo. 
ECHO ******************************************************************************************* 
pause 
+0

У меня есть рабочий пакетный файл, но проблема в том, что я не могу запустите его из JAVA, не зная буквы ... =/thx в любом случае –

+0

Это то, что я узнал до сих пор ... –

 Смежные вопросы

  • Нет связанных вопросов^_^