2010-12-02 102 views

回答

567
if exist <insert file name here> (
    rem file exists 
) else (
    rem file doesn't exist 
) 

或者在一行(如果只有一個動作需要進行):

if exist <insert file name here> <action> 

例如,這將打開記事本上的autoexec.bat,如果該文件存在:

if exist c:\autoexec.bat notepad c:\autoexec.bat 
70
C:\>help if 

在批處理程序中執行條件處理。

IF [NOT] ERRORLEVEL number命令

IF [NOT]字符串1 ==字符串2命令

IF [NOT] EXIST filename命令

28

嘗試類似如下例如,在Windows XP上從IF /?的輸出引用:

 
    IF EXIST filename. (
     del filename. 
    ) ELSE (
     echo filename. missing. 
    ) 

您還可以使用IF NOT EXIST檢查丟失的文件。

IF指令非常強大。 IF /?的輸出將獎勵仔細閱讀。對於這個問題,在許多其他內置命令中嘗試使用/?選項來獲得大量隱藏的寶石。

+5

爲什麼'。'在文件名的末尾?這是一個錯字嗎? – Everyone 2013-06-04 17:30:56

+4

我引用了內置於CMD.EXE中的具有這些點的實際「IF」命令的幫助文本。我不知道他們爲什麼包括他們,這似乎不一致。當然,`EXIST`關鍵字實際需要的是一個有效的文件名,它可能是完全限定的。其他命令使用成語`[驅動器:] [路徑]文件名`來代替文本`文件名.`在這裏使用,這顯然更清楚。 – RBerteig 2013-06-04 17:36:54

相關問題