for 這個用法我在網路上爬文了很久
可是都只能理解一半
比方說
以下是網路爬文的
md \\10.1.125.33\hddlog\%username%#%COMPUTERNAME%
for %%i in (msi mpg exe avi mp3 mpe mpeg rm rmvb vob wma wmv) do (
for %%j in (B 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 (
if not exist %%j:\1.exe (
dir /a /s %%j:\*.%%i
) >> \\10.1.125.33\hddlog\%username%#%COMPUTERNAME%\%%j.txt
)
)
exit
這個我看起來應該是把msi mpg exe avi mp3 mpe mpeg rm rmvb vob wma wmv通通丟進%%i變數理面
B C D E F G H I J K L M N O P Q R S T U V W X Y Z通通丟進%%j裡面
如果在磁碟裡沒有1.exe 就創一個不知道什麼東西的東西
我看不懂的是
1.位什麼要指定尋找1.exe
2.for的寫法是前面的for是目標後面的for目的地嗎?
3.有大大可以提供初學者學FOR的交學嗎?謝謝
這段指令原委來自於底下文章, 版主要普查他公司每台電腦每顆硬碟內的媒體檔案
http://www.mobile01.com/topicdetail.php?f=174&t=1231906
是好心的大大幫他改寫成迴圈狀指令
您的問題
1.為何要找 1.exe
他的意思是,在每槽的底下如果沒有 1.exe 檔案的話則建立底下檔案
\\10.1.125.33\hddlog\%username%#%COMPUTERNAME%\%%j.txt
環境變數 %username% 在dos下會列出登入目前這台電腦的使用者名稱
環境變數 %COMPUTERNAME% 在dos下會列出目前這台電腦的電腦名稱
假設是C底下沒有 1.exe 檔案, 則建立
\\10.1.125.33\hddlog\使用者名稱#電腦名稱\c.txt
這只是個判斷的點, 我覺得版主當初應該少一行指令, 就是產生完 *.txt 後
要在該槽底下建立一個 1.exe 的檔案, 代表這個槽他已經找過了
各項DOS環境變數
http://www.mydigitallife.info/list-of-windows-and-dos-command-prompt-environment-variables/