2013-05-15 64 views
1

我怎樣才能修改以下批處理文件來檢查這兩個C:\Program Files\AdobeC:\Program Files (x86)\Adobe批處理文件的幫助,請:如果不存在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 

你的幫助,我們將不勝感激,謝謝!

回答

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 
+0

非常感謝大家。 – bickyz

+0

想象一下,''C:\ Program Files \ Adob​​e「或'」C:\ Program Files(x86)\ Adob​​e「'是文件。那麼這也將是「真」。 – Endoro

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是否存在這兩個目錄。

0

絕對沒有一個命令可以在兩個操作系統中工作。你必須在這兩個地方檢查:

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

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

試試這個:

@echo off&setlocal 
If exist "C:\Program Files\Adobe\" (goto:end) else If exist "C:\Program Files (x86)\Adobe\" goto:end 

如果測試文件夾,你應該最好把一個反斜槓結尾。否則,如果你有一個帶有這個名字的文件,這也可以是真的。

相關問題