找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 19078|回复: 5

[文本处理] 已解决:批处理替换4个文件中相同的内容

[复制链接]
发表于 2023-1-21 12:25:11 | 显示全部楼层 |阅读模式
本帖最后由 大地 于 2023-1-21 19:39 编辑

大年30  各位老师好   我还在不断学习中    ,如果在同一文件下,有4个不同文件txt,如何同时替换4个文件中相同的字符内容,怎 么修改一下,谢谢!!!
下面这个试了一直没成功
  1. cd %~dp0

  2. @echo off
  3. setlocal enabledelayedexpansion
  4. set source1=小芳
  5. set replaced1=王小芳
  6. for /f "delims=" %%a in ('dir /a-d /b /s *.txt') do (
  7. pushd "%%~dpa"
  8. (for /f "delims=" %%b in ('type "%%a"') do (
  9. set "line=%%b"
  10. set "line=!line:%source1%=%replaced1%!"
  11. echo,!line!
  12. ))>"%%~nxa.txt"
  13. move /y "~nxa.txt" "%%~nxa"
  14. popd

  15. )
复制代码

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2023-1-21 14:31:58 | 显示全部楼层
  1. <# :
  2. @echo off&powershell -NoProfile -ExecutionPolicy bypass "Get-Content -literal '%~f0' |Out-String|Invoke-Expression"&pause
  3. #>
  4. ls -Recurse *.txt|%{[IO.File]::WriteAllText($_.FullName,[IO.File]::ReadAllText($_.FullName).replace("小芳","王小芳"))}
复制代码
 楼主| 发表于 2023-1-21 14:44:49 | 显示全部楼层
本帖最后由 大地 于 2023-1-21 14:45 编辑

回复 2# pd1
老师您好   能不能用DOS内置命令写   我多数系统是精简版,VB不全的,谢谢  新年快乐  心想事成!!
发表于 2023-1-21 16:22:34 | 显示全部楼层
  1. move /y "%%~nxa.txt" "%%~nxa"
复制代码

倒数第三行,改成这样试试
发表于 2023-1-21 17:07:27 | 显示全部楼层
回复 3# 大地


    2楼代码需要PowerShell,不需要VB的。
发表于 2023-1-21 17:12:09 | 显示全部楼层
回复 1# 大地
  1. @echo off
  2. cd /d "%~dp0"
  3. setlocal enabledelayedexpansion
  4. set "source1=小芳"
  5. set "replaced1=王小芳"
  6. for /f "delims=" %%a in ('dir /a-d /b /s *.txt') do (
  7.     pushd "%%~dpa"
  8.     (for /f "delims=" %%b in ('type "%%a"') do (
  9.         set "line=%%b"
  10.         echo,!line:%source1%=%replaced1%!
  11.     ))>"%%~nxa.txt"
  12.     move /y "%%~nxa.txt" "%%~nxa"
  13.     popd
  14. )
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 05:23 , Processed in 0.015977 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表