这是为了工作。我不能使用VB脚本。我必须在一个.bat文件中完成两个项目。你能帮我在一个.bat文件中运行第1项和第2项吗? 1.添加注册表键命令 2.执行IF语句和命令
REGEDIT4
; @ start regedit / s“%~f0”& goto:eof
[HKEY_LOCAL_MACHINE \ SOFTWARE \ TEST]
:CheckOS
如果存在“%PROGRAMFILES(X86)%”(GOTO 64BIT)ELSE(GOTO 32BIT)
:64BIT
setlocal ENABLEDELAYEDEXPANSION
set filein =“c:\ Program Files(x86)\ Premier MDC \ mdt.ini”
设置fileout =“c:\ Program Files(x86)\ Premier MDC \ mdtnew.ini”
设置fileold =“c:\ Program Files(x86)\ Premier MDC \ mdtold.ini”
set old = 10.17.8.64
设置新= 10.253.0.1
for / f“tokens = * delims =¶”%% i in('“type%filein%”')do(
设置str = %% i
设置str =!str:%old%=%new%!
回声!str! >> %FILEOUT%)移动%filein %% fileold%
移动%fileout %% filein%
GOTO END
:32BIT
setlocal ENABLEDELAYEDEXPANSION
设置filein =“c:\ Program Files \ Premier MDC \ mdt.ini”
设置fileout =“c:\ Program Files \ Premier MDC \ mdtnew.ini”
设置fileold =“c:\ Program Files \ Premier MDC \ mdtold.ini”
set old = 10.17.8.64
设置新= 10.253.0.1
for / f“tokens = * delims =¶”%% i in('“type%filein%”')do(
设置str = %% i
设置str =!str:%old%=%new%!
回声!str! >> %FILEOUT%)移动%filein %% fileold%
移动%fileout %% filein%
GOTO END
:END
我已经在单独的.bat文件中相互独立地测试了它们,它们完美地工作。我只需要帮助将它们组合成一个文件并让它运行两个任务。感谢。
答案 0 :(得分:0)
除了@xOxxOm建议的更改之外......你有很多重复的代码。这很难维护,因为需要在2个地方进行任何更改。换成这样的东西:
set "PF=%ProgramFiles%
if exist "%ProgramFiles(x86)%" set "PF=%ProgramFiles(x86)%"
setlocal ENABLEDELAYEDEXPANSION
set filein="%PF%\Premier MDC\mdt.ini"
set fileout="%PF%\Premier MDC\mdtnew.ini"
set fileold="%PF%\Premier MDC\mdtold.ini"
. . . (one set of your duplicated code here)