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

[问题求助] 拖放方式执行修改/替换多个文本内的指定字符串如何实现覆盖写入/输出到源文件/原文件

[复制链接]
发表于 2016-9-13 16:23:13 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2016-9-13 16:34 编辑

想用拖入的方法修改一个txt的内容,输出时不知应该采用什么格式
  1. @echo off
  2. for %%i in (%*) do (
  3. setlocal enabledelayedexpansion
  4.   set topography=terrain
  5.   set filepath=%%i
  6.   set filetest=j:/test/which.txt
  7. for /f "delims=" %%j in ('type "!filepath!"') do (
  8.    set str=%%j
  9.    if "!str:state_category=!"=="!str!" (
  10.      echo,%%j
  11.                                         ) else (
  12.      echo^         state_category = !topography!
  13.                                                 )
  14.                                                   )>????
  15.      
  16.                     )>????
  17. PAUSE
复制代码
代码大概是这样,用途是拖入多个txt,搜索其中字段,含有state_category字符串的行全部改成state_category = terrain
正在用filetest这个地址进行测试,原本是写在第一个问号处,用的是!filetest!,生成了which.txt,但内容只有一个},然后换到第二个问号处,内容没有问题,结果保存到了以“!filetest!”为名的文件中,直接在第二个问号处用which.txt则没有问题,有些疑惑,在输出内容时该怎么使用存在变量中的地址呢?
发表于 2016-9-13 16:35:42 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-17 07:49 , Processed in 0.016362 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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