如果只有某个文件存在时,我需要运行一个实用程序。在Windows批处理中如何实现?
if exist <insert file name here> (
rem file exists
) else (
rem file doesn't exist
)
if exist <insert file name here> <action>
if exist c:\autoexec.bat notepad c:\autoexec.bat
C:\>help if
在批处理程序中执行条件处理。
IF [NOT] ERRORLEVEL 数字 命令
IF [NOT] 字符串1==字符串2 命令
IF [NOT] EXIST 文件名 命令
尝试以下示例,摘自Windows XP上IF /?
输出的内容:
IF EXIST filename.txt ( del filename.txt ) ELSE ( echo filename.txt 不存在。 )
您还可以使用IF NOT EXIST
检查丢失的文件。
IF
命令相当强大。认真阅读IF /?
的输出会有所收获。同样地,尝试在许多其他内置命令上使用/?
选项,可能会发现很多隐藏的宝藏。
IF
命令的帮助文本,其中包含这些点。我不知道为什么他们会把它们包括进去,似乎有些不一致。当然,EXIST
关键字实际需要的是一个有效的文件名,可以是完全限定的。其他命令使用惯用语[驱动器:][路径]文件名
代替此处使用的文本filename.
,这显然更清晰。 - RBerteig