dos 中 if 的用法

時間 2023-05-09 19:42:10

1樓:匿名使用者

感覺很亂,帶標籤的行要放在行首,並且不要放在if後的括號裡,琢磨了一下你**的用意,幫你重寫一個供參考:

echo off:acls

set /p a=請輸入檔名(不帶字尾名)

if "%a%"=goto a

if not exist "c:\documents and settings\all users\桌面\%a%.bat" goto c:bcls

echo.&echo.&echo 已存在%a%,選擇q退出,set/p b=選擇y覆蓋、選擇n 將返回重新輸入檔名:

願意的話可加括號加提示延時一會再goto

if /i "%b%"=q" exit

if /i "%b%"=n" goto a

cset df=c:\documents and settings\all users\桌面\%a%.bat

more +23 %0 >"df%" rem 把你要寫的命令寫到 下面exit 命令之後,核對一下它之前有多少行。

echo ok

echo 已建立%a%.bat 即將退出 &rem 這句不要放在延時之後,不然提示資訊哪看得到?

ping /n 3 >nul

exitrem 這裡儘管寫想寫入另一批處理的所有內容,它在exit命令之後不會被本批處理執行。

2樓:匿名使用者

有點不清楚樓主寫的下面的bat的用意。我就指出**的錯誤之處吧,樓主有其他要求就hi我啦。

1。**第五行 if "%a%"=goto a (語法錯誤,中間少了個=號)

正確為:if "%a%"=goto a

2。**第六行 if exist "c:\documents and settings\all users\桌面\%a%.

bat" (b (還是語法錯誤,具體怎麼我也說不上,樓主,我還是吧我修改的貼出來吧)

if exist "c:\documents and setting\all users\桌面\%a%.bat" goto b

goto d

bset /p b=重複是否覆蓋? (y/n)

if "%b%" goto c

if "%b%" n" goto a

if not "%b%" goto :c

decho.>"c:\documents and settings\all users\桌面\%a%.bat"

echo ok

ping /n 2 >nul &echo 將會退出。

exit以上**經測試有效(其他不用改)。

請問dos批處理裡的if大概怎麼用?

3樓:匿名使用者

if [not] errorlevel number command

if [not] string1==string2 command

if [not] exist filename command

not 指定只有條件為 false 的情況下, windows xp 才。

應該執行該命令。

errorlevel number 如果最後執行的程式返回一個等於或大於。

指定數字的退出編碼,指定條件為 true。

string1==string2 如果指定的文字字串匹配,指定條件為 true。

exist filename 如果指定的檔名存在,指定條件為 true。

command 如果符合條件,指定要執行的命令。如果指定的。

條件為 false,命令後可跟一個執行 else

關鍵字後的命令的 else 命令。

else 子句必須在 if 之後出現在同一行上。例如:

if exist filename (

del filename

else (

echo filename missing)

4樓:匿名使用者

命令。

if 表示將判斷是否符合規定的條件,從而決定執行不同的命令。 有三種格式:

1、if "引數" =字串" 待執行的命令。

引數如果等於指定的字串,則條件成立,執行命令,否則執行下一句。(注意是兩個等號)

如if "%1"==a" format a:

if ==goto noparms

if ==goto noparms

2、if (not) exist 檔名 待執行的命令。

如果有指定的檔案,則條件成立,執行命令,否則執行下一句。

如if exist edit

3、if errorlevel / if not errorlevel 數字 待執行的命令。

如果返回碼等於指定的數字,則條件成立,執行命令,否則執行下一句。

如if errorlevel 2 goto x2

dos程式執行時都會返回一個數字給dos,稱為錯誤碼errorlevel或稱返回碼,常見的返回碼為。

對於你的例子,實現方法如下:

if exist f:\

start

else (

start

請教DOS命令中判斷語句的用法,就是判斷bat中前一行執行成功後在執行下一行,失敗則執行另一行,或不執行

己聞楣 沒有自動選不覆蓋的簡單機制,一般採用只拷貝不存在檔案的思路,批處理如下 echo off setlocal set a errcount 0 pushd f for f in bak do rem 判斷y 沒有這個檔案時,才進行拷貝,無需回答是否覆蓋的問題if not exist y f c...

怎麼在dos中建立只有在dos中才能開啟資料夾

第一步 在執行中輸入cmd,回車,開啟命令列視窗 第二步 在命令列視窗中切換到想要建立資料夾的硬碟分割槽,如d盤 第三步 輸入md 123 你想建立的資料夾名稱 回車,注意資料夾名後有2個小數點 ok,搞定,看看你的d盤下面是不是多了一個名為123.的資料夾了?它是既不能進入又不能被刪除的!不信你就...

C 中的用法,C 中new的用法

除了樓上說的 還有 引用 和 取地址 的含義int a int b a 上述兩行語句執行完之後,a b表示同一個變數,對其中一個的操作相當於對另一個的操作 int a int b a 則b中儲存的是a的地址。對 b 的任何操作相當於對a的操作。 朱古力兜 表示引用,就是物件的另一個名字,例如 int...