0

私はバッチの経験があまりなく、バッチ スクリプトの助けが必要です。タスクは、ドライブ文字をパラメータとして %disk_letter% に返すことです

アイデアはこれを検索に使用することです:

WMIC LogicalDisk Where VolumeName='MY_USB' Get /Format:list | FIND "キャプション="

結果として「Caption=G:」が得られます。%disk_leter% パラメータが単に "G:" である必要があります。このスクリプトを完了するには助けが必要です。

ありがとうございました!

4

2 に答える 2

0

今のところLinuxですが、これがあなたがしなければならないと思うことです。パート1:FINDコマンドの結果を変数に保存します。2:変数のサブストリングを取得します。2番目の部分は単純なので、それから始めます(最初のステップで変数に名前を付けたと仮定します)var

@echo %var:~-2%

それは私がバッチで快適である限りです、それでこの次のビットは一緒に石畳にされます:

検索結果を変数として保存するには、コードを次のように修正してみてください。

set cmd="WMIC LogicalDisk Where VolumeName='MY_USB' Get /Format:list | FIND "Caption=" "

FOR /F %%i IN (' %cmd% ') DO SET var=%%i

次に(上記を思い出してください)次のように出力します。

@echo %var:~-2%

私が2番目の部分をまとめている関連する質問はこの質問です。したがって、これが期待どおりに機能しない場合は、最初にその質問にジャンプします。

于 2012-08-22T03:53:38.047 に答える
0

ここに行きます...

@echo off

for /F "usebackq tokens=1,2,3,4 " %%i in (`wmic logicaldisk get caption^,description^,drivetype 

2^>NUL`) do (

if %%l equ 2 (
echo %%i is a USB drive.
)
)
于 2013-11-22T22:24:05.280 に答える