中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-06 02:59
48,039 主题排行 / 350,124 发帖 / 今日 2 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » 如何删除批处理文件每行开头的所有空格?
可打印版本  2,172 / 7
第1楼 JasonMing 发表于 2007-10-14 18:48
初级用户 发帖 42 积分 116
如何删除批处理文件每行开头的所有空格?
我看过这张帖子http://www.cn-dos.net/forum/viewthread.php?tid=25172

用里面方法可以处理普通文档,但用来处理批处理文件的话就会有问题,我想问下能不能通过findstr来做到(截取从每行的第一个不是空格的字符开始到最后的一个字符)???
第2楼 lxmxn 发表于 2007-10-14 19:51
版主 发帖 4,938 积分 11,386

这样???
第3楼 jmz573515 发表于 2007-10-14 20:09
银牌会员 发帖 464 积分 1,212
vbs函数——ltrim来的更容易些...
第4楼 JasonMing 发表于 2007-10-14 21:36
初级用户 发帖 42 积分 116
Originally posted by lxmxn at 2007-10-14 07:51 PM:

这样???


这个就在那个帖子里面有的···
不行···

遇到这样的语句输出之后就变样了

输出后


结果运行的时候竖线“|”就会当作管道,结果就出错了···
第5楼 lxmxn 发表于 2007-10-14 21:53
版主 发帖 4,938 积分 11,386
请把问题说清楚点,不是很懂哦

我测试没有什么问题。
第6楼 JasonMing 发表于 2007-10-14 22:17
初级用户 发帖 42 积分 116
就是原文件里面的这段文字:
echo ------------------------------
echo ^| ^|
echo ^| 无效程序 ^|
echo ------------------------------
经过去除空格的处理之后出来就变成这个样子:
echo ------------------------------
echo ^| ^|
echo | 无效程序 |
echo ------------------------------

有中文才会这样,在第二行的echo中原来是怎样输出还是一样,在第三行中原来的 ^| 输出后就变成 | 了,这样一来我执行经过去除空格的程序就会出错···
第7楼 lxmxn 发表于 2007-10-14 23:54
版主 发帖 4,938 积分 11,386

# type test.txt
echo ------------------------------
echo ^| ^|
echo ^| 无效程序 ^|
echo ------------------------------

# type Deal_test.bat
@echo off
for /f "tokens=*" %%a in (test.txt) do echo %%a
pause

# Deal_test.bat
echo ------------------------------
echo ^| ^|
echo ^| 无效程序 ^|
echo ------------------------------
请按任意键继续. . .

#
第8楼 JasonMing 发表于 2007-10-15 22:08
初级用户 发帖 42 积分 116
哈哈···测试过也的确没问题···用的还是同一条命令···怎么那天就这个样子···
汗--||
可能是机子问题吧···
顺便贴一个自己弄的精简批处理文件的小程序,只有3行,不要笑我哦··

(功能:删除注解,删除空行和每行开头的空格)
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023