If statement 批处理文件帮助:如果存在C:\Program Files\Adobe或C:\Program Files(x86)\Adobe

If statement 批处理文件帮助:如果存在C:\Program Files\Adobe或C:\Program Files(x86)\Adobe,if-statement,batch-file,If Statement,Batch File,如何修改以下批处理文件以同时检查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
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
非常感谢您的帮助,谢谢

@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
这是最简单的方法。如果其中一个或两个目录都存在,则将转到结束

如果要始终同时检查这两个选项:

@echo off
if exist "C:\Program Files\Adobe" (
  if exist "C:\Program Files (x86)\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
如果两个目录都存在,这只会转到结束。

为什么不这样

@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
为什么不这样呢

@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

在两个操作系统中绝对没有一个命令可以工作。您必须在以下两个地点办理入住手续:

SET ProgFiles86Root=%ProgramFiles(x86)%
IF NOT "%ProgFiles86Root%"=="" GOTO win64
SET ProgFiles86Root=%ProgramFiles%
:win64

"%ProgFiles86Root%\name of program" "arguments, etc."

在两个操作系统中绝对没有一个命令可以工作。您必须在以下两个地点办理入住手续:

SET ProgFiles86Root=%ProgramFiles(x86)%
IF NOT "%ProgFiles86Root%"=="" GOTO win64
SET ProgFiles86Root=%ProgramFiles%
:win64

"%ProgFiles86Root%\name of program" "arguments, etc."
试试这个:

@echo off&setlocal 
If exist "C:\Program Files\Adobe\" (goto:end) else If exist "C:\Program Files (x86)\Adobe\" goto:end
如果测试文件夹,最好在末尾加一个反斜杠。否则,如果您有一个同名文件,也可能是这样。

尝试以下方法:

@echo off&setlocal 
If exist "C:\Program Files\Adobe\" (goto:end) else If exist "C:\Program Files (x86)\Adobe\" goto:end
如果测试文件夹,最好在末尾加一个反斜杠。否则,如果您有一个具有此名称的文件,这也可能是真的。

想象一下,
“C:\Program Files\Adobe”
“C:\Program Files(x86)\Adobe”
都是文件。然后这也将是
TRUE
。想象一下,
“C:\Program Files\Adobe”
“C:\Program Files(x86)\Adobe”
都是文件。那么这也将是
真的