
[已解決]存在多個U盤移動磁盤時如何查找搜索并運(yùn)行里面指定的程序最后由 vszy 于 -3-20 17:07腳本目的:電腦上有兩個物理U盤,先獲取這些U盤的路徑(即盤符),然后再獲取的盤符里查找指定程序并運(yùn)行(如果沒有就退出腳本,如果兩個U盤里有同樣的EXE文件,執(zhí)行最后盤符那個)首先關(guān)于定位U盤搜索了論壇,發(fā)現(xiàn)下面的帖子:http://www.bathome.net/viewthrea ... p;highlight=U%C5%CC里面的方案一和二只能獲取到我的最后一個U盤(L:),方案三卻只能獲得前面那個(G:),不知道是哪里出了問題。于是又找了度娘,得到以下命令可以獲得兩個盤符:
- @echo off&title 查看可移動盤個數(shù)及盤符
- for %%i in (c d e f g h i j k l m n o p q r s t u v w x y z) do fsutil fsinfo drivetype %%i:| find 可移動
- pause
nclick="copycode($('code0'));">復(fù)制代碼
接下來開始研究在獲取的U盤路徑里搜索并運(yùn)行,查到以下命令:
- for %%a in (C D E F G H I J K L M O P Q R S T U V W X Y Z) do (
- if exist %%~a: for /f delims= %%b in ('dir /a-d/s/b %%~a:QQ.exe') do start %%~b
- )
nclick="copycode($('code1'));">復(fù)制代碼
但這個是全盤搜索,很費(fèi)時間。不知道怎么改成只搜索獲取到的那兩個U盤,還有就是如果存在同名文件怎么指定運(yùn)行最后盤符那個?個人能力實(shí)在有限了,望有經(jīng)驗(yàn)的朋友幫助一下,謝謝!剛剛又有個想法,已知條件:在U盤下有個test.ini文件(U盤盤符和test.ini所在目錄不確定),test.ini內(nèi)容如下:
- [Common]
- NAME1=1.EXE
- NAME2=2.EXE
- NAME3=3.EXE
nclick="copycode($('code2'));">復(fù)制代碼
這里的NAME1,NAME2,NAME3也是已知的。能不能寫個BAT,要求先找到這個INI文件的路徑并讀取NAME1或2或3的值。最后運(yùn)行“INI路徑1或2或3.EXE”例如:比如INI在G:soft下,讀取NAME2段,最終結(jié)果是start G:soft2.exe