中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-08 09:11
47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行
DOS批处理 & 脚本技术(批处理室) » [讨论]最大限度原样输出含特殊字符的指定行内容
可打印版本  20,520 / 32
第31楼 different 发表于 2008-12-23 01:30
初级用户 发帖 20 积分 48
Originally posted by namejm at 2007-5-17 21:14:
  最完美的代码如下(来自23楼bjsh的代码,本人仅作少量改动):

  代码3:
CODE:
--------------------------------------------------------------------------------

@echo off
cd.>output.txt
for /f "delims=" %%i in ('findstr /n .* test.txt') do (
set "var=%%i"
setlocal enabledelayedexpansion
set var=!var:*:=!
(echo.!var!)>>output.txt
endlocal
)
start output.txt


学习了,运行时报错,不过输出的txt却是正确的!

[ Last edited by different on 2008-12-23 at 01:43 ]
第32楼 bjjgq 发表于 2009-12-03 21:14
初级用户 发帖 27 积分 39
精彩呀,我想补充点,不知道对不对
findstr /n .* test.txt是要找到所有的行,并在其前加上行号如“1:”
所以在后面的循环中才会出现这样的一句:
set var=!var:*:=! 来删掉如“1:”这样的一批行号
如有不对之处请指正!
第33楼 icebat 发表于 2009-12-09 19:03
初级用户 发帖 11 积分 20
两个字, 佩服, 23 楼, 日哦。。。
上一页  1 2 3
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023