如何修改以下批处理文件以检查C:\Program Files\Adobe
和C:\Program Files (x86)\Adobe
?
此代码仅查找C:\Program Files\Adobe
@echo off
if exist "C:\Program Files\Adobe" goto end
echo %computername% > \\server001\share\%computername%.txt
:end
我尝试了以下但不起作用:
@echo off
If exist "C:\Program Files\Adobe" If exist "C:\Program Files (x86)\Adobe" goto end
echo %computername% > \\server001\share\%computername%.txt
:end
非常感谢您的帮助,谢谢!
答案 0 :(得分:2)
为什么不这样?
@echo off
If exist "C:\Program Files\Adobe" goto end
If exist "C:\Program Files (x86)\Adobe" goto end
echo %computername% > \\server001\share\%computername%.txt
:end
答案 1 :(得分:1)
@echo off
if exist "C:\Program Files\Adobe" goto end
if exist "C:\Program Files (x86)\Adobe" goto end
echo %computername% > \\server001\share\%computername%.txt
:end
这是最简单的方法。如果存在任一个或两个目录,将goto end
。
如果您想要同时检查两者:
@echo off
if exist "C:\Program Files\Adobe" (
if exist "C:\Program Files (x86)\Adobe" (
goto end
)
)
echo %computername% > \\server001\share\%computername%.txt
:end
如果两个目录都存在,则只会goto end
。
答案 2 :(得分:1)
试试这个:
@echo off&setlocal
If exist "C:\Program Files\Adobe\" (goto:end) else If exist "C:\Program Files (x86)\Adobe\" goto:end
如果你测试文件夹,最好最后加一个反斜杠。否则,如果您有一个具有此名称的文件,也可以这样。
答案 3 :(得分:0)
在这两种操作系统中绝对没有一个命令可以工作。你必须检查这两个地方:
SET ProgFiles86Root=%ProgramFiles(x86)%
IF NOT "%ProgFiles86Root%"=="" GOTO win64
SET ProgFiles86Root=%ProgramFiles%
:win64
"%ProgFiles86Root%\name of program" "arguments, etc."