我需要运行一个实用程序,只有当某个文件存在。如何在Windows批处理中做到这一点?


C:\>help if

在批处理程序中执行条件处理。

IF [NOT] ERRORLEVEL number命令 IF [NOT] string1==string2命令 IF [NOT] EXIST文件名命令


试试下面的例子,引用自IF /?在Windows XP上:

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

你也可以用IF NOT EXIST检查丢失的文件。

IF命令非常强大。IF /?将奖励仔细阅读。在这个问题上,试试/?选项上的许多其他内置命令为许多隐藏的宝石。  


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