求助BAT問題,執行BAT出錯!提示很奇怪

2025-01-29 20:50:15 字數 1391 閱讀 7257

1樓:網友

錯誤原因:1.像一樓說得:

要開啟延遲變數,如果用在if()或&&(或do()等等這些括號裡面的變數都屬於延遲變數,如果再次在括號裡面呼叫,是沒有值的,所以顯示不了,只有在()括號外部呼叫才會正常顯示。

setlocal enabledelayedexpansion語句讀取檔案內容要用 /f格式!否則只是顯示「c:\而無法辨認是檔名還是字串。

for /f %%i in (c:\ do (3.我看出來你上面的**有點小錯誤,就是for語句裡面的左括號和冒號都是在中文輸入法時輸入的,一定要在英文輸入法裡輸入括號還有冒號。

否則就會不識別。

你試試我的**,我測試過了:

echo off

setlocal enabledelayedexpansionfor /f %%i in (c:\ do (set ad=%%i

echo !ad!

pause

2樓:軒轅黃弟

對檔案進行解析需要用 /f 格式的。可以簡單的測試一下:

for /f "delims=\"i in (c:\ do (echo %%i)

如果文字的內容為f:\123\234,結果為f:。

需要幫助,可以輸入for /?查詢。

執行bat出錯!提示很奇怪

3樓:匿名使用者

ipconfig

pause你測試一下,這樣可以嗎?

可能是你bat檔案的錯。

要不改成另乙個樓上的。

bat程式設計問題

4樓:公子七哥

1、%1 %2 %3 對應的就是接受到的引數,但不一定是批處理接收的引數,也有可能是內部標籤接收的引數,具體要看**。

比如,如下就是內部標籤接收的引數。

echo off

call :sub 1 2 3

goto :eof

subecho %1 %2 %3

exit /b

2、不知道你的bat的執行方式,就是說不知道是將檔案拖放到bat的圖示上,還是拖放到視窗中執行,這兩種是不一樣的。如果是拖放到圖示上,通過命令列執行的話就可以直接用:

d:\" "d:\file1" "d:\file2" "d:\file3"

檔案路徑用相對路徑或全路徑,檔名前後加英文半形引號,之間用空格分開即可。

5樓:網友

給你個直觀的吧。

你隨便拖1-9個檔案到下面批處理上。應該就能發現了。

echo off

for /l %%a in (1,1,9) do call echo.%%a

pause>nul

exit

無法開啟 bat檔案,bat檔案無法執行

無法開啟.bat檔案是因為檔案關聯出問題了。解決方法 雙擊開啟 我的電腦 工具 資料夾選項 檔案型別 新建 高階 副檔名處填入bat,關聯檔案型別處選擇ms dos 批處理檔案 確定。試試這個簡單方法。安全模式下開機,開始 所有程式 附件 系統工具 系統還原,選擇最近好的時間點試試。如果不給恢復,系...

bat病毒鎖機,求助,求一段bat鎖機程式碼或者一些無法關閉的病毒

taskkill im exporler.exetaskkill im exporler.exetaskkill im exporler.exe把他放在開始選單的 啟動 裡 一開機桌面就沒了 樓上那個是剽竊我的智力成果 bat病毒鎖機 我的電腦被bat病毒鎖了 bat沒那麼強大,也不會有人真用bat...

問一下BAT中只寫了0執行後會怎麼樣

0 在批處理中代表批處理自己 如果直接輸入 0 就是 執行 自己 比如 你這個批處理 取名 1.bat 直接輸入 0 表示 執行 1.bat 這個批處理 意識就是把自己再執行一遍 當你 雙擊執行這個批處理 這個批處理就會 無限的執行下去 限入一個死迴圈 而 符號 代表 如果 符號 之前的命令沒有執行...