[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 yhcfsr 于 2018-4-11 21:14 编辑

样本文件传上来吧。自己做样本测试太麻烦啦。
BAT处理这种特殊字符一大把的文本,有点难度,不如POWERSHELL干脆。

TOP

本帖最后由 yhcfsr 于 2018-4-11 22:22 编辑

POWERSHELL
1.备份源文件
2.此为powershell脚本,保存为ps1扩展名文件,右键单击脚本,以powershell运行
3.未对powershell进行过设置的,可以管理员身份运行CMD,复制以下命令到命令提符 以解除脚本限制
  1. powershell -c "set-executionpolicy unrestricted"
复制代码
当然也可以管理员运行POWERSHELL,输入以下命令解除脚本限制
  1. set-executionpolicy unrestricted
复制代码
​4. WIN10以下系统如出错,可能需要去微软官网下载补丁升级powershell
  1. $SrcFile="d:\test\abcd.xml";#源文件
  2. $n=0;$str=$null;$content=$null;$i=0;
  3. $content=type $SrcFile;
  4. $content|%{
  5.    if ($_ -match '<ID>[0-9]{1,}</ID>'){ $n++;$str+=($_ -replace '<ID>[0-9]{1,}</ID>', "<ID>$n</ID>")} else {$str+=$_}
  6.    if (++$i -lt $content.count){$str+="`r`n"}
  7. }
  8. Out-File -FilePath $SrcFile -InputObject $str -NoNewline -Encoding utf8;
复制代码

TOP

回复 6# Vcehurry


    nonewline 是powersehll5才有的参数,防止最后一行生成空行,如果不介意生成空行,可以删除这个参数

TOP

返回列表