如何从批处理文件中检查文件是否存在
答
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
答
C:\>help if
在批处理程序中执行条件处理。
IF [NOT] ERRORLEVEL number命令
IF [NOT]字符串1 ==字符串2命令
IF [NOT] EXIST filename命令
答
尝试类似如下例如,在Windows XP上从IF /?
的输出引用:
IF EXIST filename. ( del filename. ) ELSE ( echo filename. missing. )
您还可以使用IF NOT EXIST
检查丢失的文件。
IF
指令非常强大。 IF /?
的输出将奖励仔细阅读。对于这个问题,在许多其他内置命令中尝试使用/?
选项来获得大量隐藏的宝石。
为什么'。'在文件名的末尾?这是一个错字吗? – Everyone 2013-06-04 17:30:56
我引用了内置于CMD.EXE中的具有这些点的实际“IF”命令的帮助文本。我不知道他们为什么包括他们,这似乎不一致。当然,`EXIST`关键字实际需要的是一个有效的文件名,它可能是完全限定的。其他命令使用成语`[驱动器:] [路径]文件名`来代替文本`文件名.`在这里使用,这显然更清楚。 – RBerteig 2013-06-04 17:36:54