Board logo

标题: [文本处理] 批处理怎样根据Excel记录内容替换多个文件不同内容? [打印本页]

作者: 7412abc    时间: 2022-8-27 22:18     标题: 批处理怎样根据Excel记录内容替换多个文件不同内容?

我现在有一个excel表格,记录修改内容, 就是很多文件,但每个文件替换的内容不一样

所在文件路径        原内容        新内容
C:\dwg-001.txt        "PT-X"        "PT-1201"
C:\dwg-001.txt        "TG-X"        "TG-1301"
C:\dwg-002.txt        "PT-X"        "PT-1202"
C:\dwg-003.txt        "PT-X"        "PT-1203"
C:\dwg-003.txt        "-1-"           "1-GO-001-IH"
能否通过批处理进批量修改
作者: flashercs    时间: 2022-8-28 14:23

脚本保存为ANSI编码
  1. @echo off
  2. cd /d "%~dp0"
  3. @REM excel文件保存为.csv
  4. set csvfile=job2.csv
  5. powershell -c "$enc=[System.Text.Encoding]::Default;gc -literal $env:csvfile -read 0|ConvertFrom-Csv|foreach{[io.file]::WriteAllText($_.所在文件路径,([io.file]::ReadAllText($_.所在文件路径,$enc).Replace($_.原内容,$_.新内容)),$enc)}"
  6. pause
复制代码
未测试




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2