0

我正在尝试将一个批处理文件放在一起,该批处理文件复制几个文件并启动一个 excel 文件。我原来的批处理文件工作正常,但我修改它以尝试识别操作系统是 32 位还是 64 位,并相应地引用正确的文件夹。

步骤如下:

  1. 确定操作系统是否有“Program Files (x86)”文件夹。如果是,那么操作系统必须是 64 位的。如果没有,则继续执行步骤 5。

  2. 如果确实有“Program Files (x86)”文件夹,则查看文件夹“c:\Program files (x86)\Auto-BF\”中是否有“installed.txt”文件

  3. 如果没有文件,请执行以下操作。

a) 在 "%userprofile%\MarketFeeder Pro 7\profiles\" 中创建 "Auto-BF" 文件夹 b) 将 2 个文件从 "c:\Program files (x86)\Auto-BF" 复制到这个新创建的 "Auto-BF" " 文件夹,使用一对 xcopy 命令: xcopy "c:\Program Files (x86)\Auto-BF\settings.ini" "%userprofile%\MarketFeeder Pro 7\profiles\Auto-BF" /h /q /r /y xcopy "c:\Program Files (x86)\Auto-BF\customcells.xml" "%userprofile%\MarketFeeder Pro 7\profiles\Auto-BF" /h /q /r /y c) 现在创建一个“已安装.txt”文件并将其放在“C:\Program Files (x86)\Auto-BF”文件夹中,以确认该文件夹已创建并已复制文件。d) 现在启动一个 excel 电子表格“abf。 "C:\Program Files (x86)\Auto-BF" 中的 xlsx"文件夹,然后退出批处理文件。

  1. 如果“C:\Program Files (x86)\Auto-BF”文件夹中已经有一个“installed.txt”文件,那么只需在同一文件夹“abf.xlsx”中启动一个 excel 电子表格

(对于 32 位系统,当“Program Files (x86)”不存在时) 5. 检查“C:\Program Files\Auto-BF\”中是否有“installed.txt”文件

  1. 如果没有文件,请执行以下操作。

a) 在 "%userprofile%\MarketFeeder Pro 7\profiles\" 中创建 "Auto-BF" 文件夹 b) 将 2 个文件从 "c:\Program files\Auto-BF" 复制到这个新创建的 "Auto-BF" 文件夹中,使用一对 xcopy 命令: xcopy "c:\Program Files\Auto-BF\settings.ini" "%userprofile%\MarketFeeder Pro 7\profiles\Auto-BF" /h /q /r /y xcopy "c: \Program Files\Auto-BF\customcells.xml" "%userprofile%\MarketFeeder Pro 7\profiles\Auto-BF" /h /q /r /y c) 现在创建一个“installed.txt”文件并将其放在""C:\Program Files\Auto-BF" 文件夹以确认该文件夹已创建并且文件已被复制。d) 现在从“C:\Program Files\Auto”启动一个 excel 电子表格“abf.xlsx” -BF”文件夹,然后退出批处理文件。

  1. 如果“C:\Program Files\Auto-BF”文件夹中已经有一个“installed.txt”文件,那么只需在同一文件夹“abf.xlsx”中启动一个 excel 电子表格

好的,我希望这相对简单易懂!:-)

这是我已经创建的批处理文件,但有些东西不太正常......


@echo off
for /f "tokens=*" %%a in ('dir /b /s "%windir%\system32\xcopy.exe"') do set path=%path%;%%~dpa

IF EXIST "c:\Program Files (x86)\" (

cd "c:\Program Files (x86)\Auto-BF\"
IF EXIST "c:\Program Files (x86)\Auto-BF\installed.txt" START abf.xlsx 
IF EXIST "c:\Program Files (x86)\Auto-BF\installed.txt" EXIT
) ELSE (

REM create Auto-BF Folder
cd %userprofile%\MarketFeeder Pro 7\profiles\
md Auto-BF

REM move files
xcopy "c:\Program Files (x86)\Auto-BF\settings.ini" "%userprofile%\MarketFeeder Pro 7\profiles\Auto-BF" /h /q /r /y
xcopy "c:\Program Files (x86)\Auto-BF\customcells.xml" "%userprofile%\MarketFeeder Pro 7\profiles\Auto-BF" /h /q /r /y

cd c:\Program Files (x86)\Auto-BF\

ECHO Auto-BF successfully installed >installed.txt

START abf.xlsx
EXIT )

IF EXIST "c:\Program Files (x86)\" (


cd "c:\Program Files\Auto-BF\"
IF EXIST "c:\Program Files\Auto-BF\installed.txt" START abf.xlsx 
IF EXIST "c:\Program Files\Auto-BF\installed.txt" EXIT
) ELSE (

REM create Auto-BF Folder
cd %userprofile%\MarketFeeder Pro 7\profiles\
md Auto-BF

REM move files
xcopy "c:\Program Files\Auto-BF\settings.ini" "%userprofile%\MarketFeeder Pro 7\profiles\Auto-BF" /h /q /r /y
xcopy "c:\Program Files\Auto-BF\customcells.xml" "%userprofile%\MarketFeeder Pro 7\profiles\Auto-BF" /h /q /r /y

cd c:\Program Files\Auto-BF\

ECHO Auto-BF successfully installed >installed.txt

START abf.xlsx

EXIT )
4

1 回答 1

0

您的两个 IF 结构都是相同的:

IF EXIST "c:\Program Files (x86)\" (

第二个应该是:

IF EXIST "c:\Program Files\" (
于 2013-10-24T15:23:07.747 回答