我有下面的蝙蝠,但它dosnt似乎工作我想檢查一個文件名在tom.txt中,如果它存在我想什麼都不做,如果它不存在,我想運行runme.bat檢查文件存在
Echo Setting variable to file name
set FAT=<C:\tom.txt
ECHO Checking for file, if exists do nothing if not run bat...
if exists %FAT% (
end
)else(
C:\runme.bat
)
我有下面的蝙蝠,但它dosnt似乎工作我想檢查一個文件名在tom.txt中,如果它存在我想什麼都不做,如果它不存在,我想運行runme.bat檢查文件存在
Echo Setting variable to file name
set FAT=<C:\tom.txt
ECHO Checking for file, if exists do nothing if not run bat...
if exists %FAT% (
end
)else(
C:\runme.bat
)
有一些小錯誤,但是,這是你的主要困難的原因。
你可以閱讀從與SET /P
命令文件中的行,而不是簡單地用SET
:
SET /P FAT=<C:\tom.txt
在文件存在檢查命令中的關鍵字是EXIST
,不EXISTS
IF EXIST …
此外,如果您只需要對文件'小號非 -existence,你可以簡單地添加NOT
:
IF NOT EXIST …
所以,整個命令可能是這樣的:
IF NOT EXIST %FAT% C:\runme.bat
我相信正確的語法是
if exist %FAT% goto NORUN
C:\runme.bat
:NORUN
請注意代碼中的「存在」與「存在」。一對夫婦的其他注意事項:
C:\NUL
將始終返回true。我認爲最簡單的解決辦法是做所有的這樣一行:
IF NOT EXIST C:\tom.txt C:\runme.bat
沒有必要,除非你打算再次使用它的變量,它只是意味着另一行代碼。正如Aleks G和Andriy M所說,您需要確保命令和參數拼寫正確。
不正確。 'tom.txt'保證存在。我們想要的文件名存儲在'tom.txt'裏面。 –
是的,你的權利,我的錯誤 –