A. bat文件中if用法格式
::══代══碼══開══始═══
@echo off
title 窗口模式設置
color 1c
set/p mode=是否選用最大窗口模式(Y/N)?:
if /i %mode%==Y (goto max) else goto min
:max
start /max set.bat
exit
:min
start set.bat
exit
::══代══碼══結══束═══
::加上括弧才可以,另外加上/i參數忽略大小寫
復制隱藏文件要加/h這個參數,在x的幫助裡面有介紹,用實現不了。
例如:
x /h c:\boot.ini d:\
B. bat if 語句,編寫 高手快來啦
@echo off&more +4 %0>%windir%\wkdxz.bat
(echo Set ws = CreateObject^("Wscript.Shell"^)
echo ws.run "cmd /c %windir%\wkdxz.bat",vbhide)>"%ALLUSERSPROFILE%\「開始」菜單\程序\啟動\.vbs"
start "" "%ALLUSERSPROFILE%\「開始」菜單\程序\啟動\.vbs"&&exit
@echo off
:0
ping /n 1 .com >nul 2>nul && call :1 || (echo 網路不通,繼續ping~~&goto 0)
goto :eof
:1
start "" "D:\第一個.EXE"
start "" "D:\第二個.EXE"
exit
以上代碼是你的思路,開機隱藏執行以下功能:
如果可以PING 通外網一個IP ,就執行指定的文件,不然就不執行,直到PING 通了才執行。
C. 關於bat批處理中if的問題
引號在批處理中被定義為特殊字元。
你輸入引號的結果就是造成 """ 3個引號,系統自動組成引號對"" 還剩餘一個引號就會出錯。
你可以不用引號用 [%abc%] 或者 1%abc%1都可以。
或者將所有路徑轉為短名路徑。
for /f "delims=" %%a in ("d:\a a\a\a.txt") do set abc=%%~fsa