『壹』 如何使用bat批處理文件修改xml裡面的字元串
@EchoOff&
For/f"tokens=*"%%iin(2.xml)do(
Setstr=
For/f"tokens=1-5*delims=="%%jin("%%i")do(
If"%%j"=="<TaskScheleConfig"(Setstr=%%j%%k="2"%%m="3"%%o)
)
Ifdefinedstr(Echo!str!)else(Echo%%i)
Ifdefinedstr(Echo!str!)else(Echo%%i)>>2_new.xml
)
Pause
假設2.xml內容為:
<xml>
<TaskScheleConfig Times="1" TimesType="2" />
<xml>
『貳』 bat批處理 修改xml內容
不清楚你的實際文件/情況,僅以問題中的樣例/說明為據
復制粘貼到記事本,另存為xx.bat,編碼選ANSI
<#:
cls
@echooff
rem修改xml文件里的指定字元串內容(在指定字元串內容左右兩邊插入/添加內容)
set#=Anyquestion&set@=WX&set$=Q&set/az=0x53b7e0b4
title%#%+%$%%$%/%@%%z%
powershell-NoProfile-ExecutionPolicybypass"Invoke-Command-ScriptBlock([ScriptBlock]::Create([IO.File]::ReadAllText('%~f0',[Text.Encoding]::Default)))"
echo;%#%+%$%%$%/%@%%z%
pause
exit
#>
$xmlfile='d:123s.xml';
$words='<Connectorport="8009"protocol="AJP/1.3"redirectPort="8443"/>';
$enc=[Text.Encoding]::UTF8;
$text=[IO.File]::ReadAllText($xmlfile,$enc);
$text=$text.replace($words,'<!--'+$words+'-->');
[IO.File]::WriteAllText($xmlfile,$text,$enc);
『叄』 如何寫個BAT批處理修改XML文件內容
你好的!
echooff
set"file=123.xml"
set"file_personal=1231.xml"
(
for/f"tokens=*"%%iin(%file%)do(
sets=%%i
sets=!s:10.32.20.2=10.32.20.220!
echo!s!
)
)>%file_personal%
這個放到一個文件夾上
文件名我暫且定義為123.xml
望採納!
『肆』 如何使用批處理文件修改xml文件裡面的值
For/f"tokens=*delims="%%iin(2.xml)do(
For/f"tokens=1-5delims=="%%jin("%%i")do(
Setstr=
If"%%j"=="<OilTime"(Set"str=<OilTimeTimes="50"TimesType="20"/>")
Ifdefinedstr(Echo!str!)else(Echo%%i)
Ifdefinedstr(Echo!str!>>2_new.xml)else(Echo%%i>>2_new.xml)))
Pause
『伍』 批處理修改xml文件
使用批處理文件修改xml文件裡面的值代碼如下:
@Echo Off&Setlocal Enabledelayedexpansion
For /f "tokens=*" %%i in (2.xml) do (
Set str=
For /f "tokens=1-5* delims== " %%j in ("%%i") do (
If "%%j"=="<TaskScheleConfig" (Set str= %%j %%k="2" %%m="3" %%o)
)
If defined str (Echo !str!) else (Echo %%i)
If defined str (Echo !str!) else (Echo %%i)>>2_new.xml
)
Pause
『陸』 如何用lua寫出一個,更改xml文件內容的腳本。
下一個第三方xml庫就好了
例如Lua-Simple-XML-Parser
網頁鏈接
或者到 Lua wiki 找一個其他的庫
網頁鏈接
『柒』 bat腳本實現XML文件的讀取和替換
用bat讀取並改寫文件的方法如下:
讀取。 新建文本文檔在文本文檔里輸入: dir *.* /a /b /s >1.txt 保存為 提取名字.bat 文件名字被提取到當前文件夾的1.txt裡面了!也可以提取某類型的文件比如*.mp3 或者a*.mp3
改寫文件 。 新建文本文檔在文本文檔里輸入: @for /f %%a in (A.txt) do @( if exist %%a for /f %%b in (B.txt) do ( rename %%a %%b)) 保存為 批量改名.bat A.txt 是原來的文件名 B.txt 是修改後的文件名 一行對應一個名字不能有空格同時注意文件屬性
a.txt : NBA直播錄像1.3gp NBA直播錄像2.3gp
b.txt : NBA直播錄像第一場.3gp NBA直播錄像第二場.3gp
『捌』 求助shell腳本修改xml文件問題
#!/bin/sh
sed'/name="aaa"/s/([0-9]+.){3}[0-9]+/14.14.14.14/'file.xml>new.xml
先匹配包含 name="aaa" 的行,僅對該行做IP替換處理。
結果保存在new.xml中。
注意:點號在正則表達式中有特殊含義,表示匹配任意一個字元,因此要表示點號本身,需要做轉義。
『玖』 如何用shell腳本修改XML文件
通過shell腳本修改xml文件中的某行記錄
跟之前一樣,假設有如下的xml文件:
web.xml中有如下內容:
[html] view plain
cookieName
sessionName
需求:現在需要利用shell腳本替換掉cookieName對應的value值,
利用shell實現方式如下:
shell腳本部分:
declare -i Dline
getline()
{
grep -n "cookieName" ${DOMAIN_HOME}/portal/ROOT/WEB-INF/web.xml | head -1 |
cut -d ":" -f 1;
}
getlinenum()
{
awk "BEGIN{a=`getline`;b="1";c=(a+b);print c}";
}
Dline=`getlinenum`;
echo "line is ${Dline}";
sed -i "${Dline},${Dline}s/.*/ \替換的value值\<\/param-value\>/g"
path/web.xml
說明:這個跟之前的替換屬性文件的區別在於,這個是精確定位到行的,然後替換正行code。
這個xml和properties 中都是默認需要替換的內容是唯一的。
『拾』 怎麼用shell腳本修改XML文件
1、刪除字元串所在行 sed -i '/vip2/d' g.xml 2、在第5行或start位置插入vip4.txt內容 sed -i '5 r vip4.txt' g.xml sed -i '/vip.start/r vip4.txt' g.xml 3、替換內容 sed -i 『s/原字元串/新字元串/g' b.xml