标题: [文本处理] [已解决]批处理命令echo+ >> 空格问题 [打印本页]
作者: guoguo163 时间: 2021-9-7 15:14 标题: [已解决]批处理命令echo+ >> 空格问题
本帖最后由 guoguo163 于 2021-9-8 17:06 编辑
一个config.ini配置文件- [tab]
- max=10
- [config]
- mute=0
复制代码
执行echo 命令在尾部添加- echo+ >> config.ini
- echo [ins]>> config.ini
- echo fee=123 >> config.ini
复制代码
这个是一个示例文件,第二个人拿这个示例文件需要生成很多 fee=xxx 的不同文件
写了如下批处理- set newline=fee=%1
- for /f "delims=" %%a in ('findstr "fee=" config.ini')do (
- for /f "delims=" %%i in ('type "config.ini"') do (
- if %%i==%%a (echo %newline%>>newconfig.ini)else echo %%i>>newconfig.ini ) )
- pause
复制代码
问题来了,修改的文件会出现很多ECHO 处于打开状态。
仔细看了,原来echo+ >> config.ini 会插入一个空格的空行,导致替换到这行参数空值。
如何避免产生ECHO 处于打开状态。 或者 ECHO+ >> 空格问题
作者: Batcher 时间: 2021-9-7 15:28
回复 1# guoguo163
参考:Q-09: echo 命令重定向写入文本行尾有多余的空格
https://mp.weixin.qq.com/s/6lbb97qUOs1sTyKJfN0ZEQ
参考:批处理动态生成脚本或文件
https://mp.weixin.qq.com/s/McvY4CiR-SYGaCha7lmjIw
作者: guoguo163 时间: 2021-9-8 17:09
回复 2# Batcher
感谢管理员帮助。
echo+ >> config.ini 改成
>>config.ini echo+ 解决换行前面空格问题,导致循环取空值问题
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |