批处理替换文本文件内容 求帮助

两个文件(可以用记事本打开)⒈文件名:nx1.lic文件内容:(没有横杠)-------------------------------------SERVERccc-x... 两个文件(可以用记事本打开)
⒈文件名:nx1.lic
文件内容:(没有横杠)
-------------------------------------
SERVER ccc-xxx-ddd ID=20080618 28000
VENDOR ugslmd
-------------------------------------
⒉文件名:nx2.lic
文件内容:
-------------------------------------
SERVER ccc-xxx-ddd ANY 27000
DAEMON uglmd
-------------------------------------
现在我需要做个批处理
在做一个批处理,输入 一串字符 来替换掉 两个文本中的 ccc-xxx-ddd
可以同时修改,也可以分先后修改2个文件,请问应该如何写批处理?
看了下FOR命令,貌似太复杂,短时间领悟不到,现在向大虾们赐教,1要求,批处理能用,如果解释下命令就更好了(当然你觉得没必要我只好自己去查找资料)
是这样的,我其实要设置一个变量 NAME 已经在批处理了,是用来设置计算机名,现在希望这个变量名NAME
能够替换掉 文件中的 字符串 ccc-xxx-ddd,我是希望 只输入一个字符串来达到一次修改 计算机名和文件文本的效果(其实还有环境变量里也要修改,这个是下一个要处理的问题,最后的效果就是 输入 NAME 的值一次修改 5个地方,分别是 计算机名 2个文本文件 2个环境变量)
@set /p name=请输您的计算机名:
reg add reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ActiveComputerName" /v ComputerName /t reg_sz /d %name% /f >nul 2>nul
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ComputerName" /v ComputerName /t reg_sz /d %name% /f >nul 2>nul
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v "NV Hostname" /t reg_sz /d %name% /f >nul 2>nul
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v Hostname /t reg_sz /d %name% /f >nul 2>nul
展开
 我来答
breakme
2010-01-29 · TA获得超过637个赞
知道小有建树答主
回答量:343
采纳率:66%
帮助的人:140万
展开全部
1:替换文件请使用下面的批处理

@echo off
set name=computername_new
setlocal enabledelayedexpansion
for %%1 in (ugs*.lic) do for /f "tokens=*" %%i in (%%1) do (
set var=%%i
set "var=!var:CQDY-COMPUTER=%name%!"
echo !var!>>1%%1
)
for %%o in (ugs*.lic) do (
if exist %%o del /f %%o
if exist 1%%o ren 1%%o %%o
)

pause

::下面修改环境变量

echo Windows Registry Editor Version 5.00 >Environment.reg
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment]>>Environment.reg
echo "UGS_LICENSE_SERVER"="28000@%NAME%">>Environment.reg
echo "UGII_LICENSE_FILE"="28000@%NAME%">>Environment.reg
regedit /s Environment.reg

pause
检静杉rL
2010-01-28 · TA获得超过903个赞
知道小有建树答主
回答量:1276
采纳率:0%
帮助的人:1306万
展开全部
'以下内容保存成 a.vbs,运行就可以了 ---- VBS是windows下的脚本,可以说就是批处理

aaa=inputbox("请输入要将ccc-xxx-ddd替换成的字符")
times=inputbox("只替换nx1.lic输入1,只替换nx2.lic输入2,都替换输入3")
if times=1 then dealit("nx1.lic")
if times=2 then dealit("nx2.lic")
if times=3 then
dealit("nx1.lic")
dealit("nx2.lic")
end if
sub dealit(filename)
set fso=createobject("scripting.filesystemobject")
set file=fso.opentextfile(filename)
s=file.readall
file.close
s=replace(s,"ccc-xxx-ddd",aaa)
set file=fso.createtextfile(filename)
file.write s
file.close
end sub

----------
那你就查一下用vbs修改注册表的方法,再自定义几个函数,就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式