批處理實現批量建立快捷方式

功能:自動讀取./dir.txt文件中配置的每行目錄,並在當前目錄下建立該目錄的快捷方式(目錄能夠是可訪問的網絡磁盤目錄,此功能能夠取代網絡磁盤映射,特別適用於網絡磁盤映射太多,而虛擬網絡磁盤驅動器數量不足的狀況)網絡

注意:批處理中的for循環中的語句會被解析爲一條語句執行,因此必須使用變量延遲才能保證數據的正確性,同時,for循環中的右括號要啓用轉義測試

測試:spa

./dir.txt內容以下:code

 

運行前目錄:blog

 

運行後目錄:token

 

批處理代碼以下: ip

 1 @echo off  2 
 3 color 0a  4 title 自動建立文件目錄快捷方式  5 
 6 ::設置變量延遲  7 setlocal EnableDelayedExpansion  8 
 9 for /f "tokens=*" %%a in (./dir.txt) do ( 10   set ThePath=%%a 11 
12   for %%b in (%%a) do ( 13     set LinkName=%%~nxb.lnk 14 
15   mshta VBScript:Execute("Set Shell=CreateObject(""WScript.Shell""):Set Link=Shell.CreateShortcut(""!LinkName!""):Link.TargetPath=""!ThePath!"":Link.Save:close"^) 16 
17  ) 18 ) 19 
20 echo 建立完成!按任意鍵退出 21 pause>nul 22 
23 ::說明:複製以上代碼到文本文檔中,保存爲.bat文件,點擊直接運行便可自動讀取./dir.txt中每行目錄,並在當前目錄下建立該目錄的快捷方式 24 ::(注:部分殺毒軟件可能會報毒,請容許此程序的全部操做並添加信任)

 增強版:可配置快捷方式名稱(由於相同目錄可能被拷貝多份)文檔

 

./dir.txt內容以下:(第一列爲指定的快捷方式名稱,中間以「:」隔開,後跟具體路徑名,注意:冒號兩邊不能加空格)get

 

 

運行前目錄:it

 

 

 

 

運行後目錄:

 

 

 批處理代碼以下:

 1 @echo off  2 
 3 color 0a  4 title 自動建立文件目錄快捷方式  5 
 6 ::設置變量延遲  7 setlocal EnableDelayedExpansion  8 
 9 for /f "delims=: tokens=1,*" %%a in (./dir.txt) do ( 10   set LinkName=%%a.lnk 11   set ThePath=%%b 12   mshta VBScript:Execute("Set Shell=CreateObject(""WScript.Shell""):Set Link=Shell.CreateShortcut(""!LinkName!""):Link.TargetPath=""!ThePath!"":Link.Save:close"^) 13 ) 14 
15 echo 建立完成!按任意鍵退出 16 pause>nul 17 
18 ::說明:複製以上代碼到文本文檔中,保存爲.bat文件,點擊直接運行便可自動讀取./dir.txt中每行目錄(能夠是可訪問的網絡磁盤目錄),並在當前目錄下建立該目錄的快捷方式 19 ::(注:部分殺毒軟件可能會報毒,請容許此程序的全部操做並添加信任)
相關文章
相關標籤/搜索