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

[文本处理] [已解决]批处理如何除去本行的空格?

[复制链接]
发表于 2011-6-13 23:05:19 | 显示全部楼层 |阅读模式
1.txt中

C:\Documents and Settings\Administrator\「开始」菜单\程序\启动\32B236.lnk
(此处有一空格)C:\WINDOWS\system32\431CAD\32B236.EXE   
要求生成

C:\Documents and Settings\Administrator\「开始」菜单\程序\启动\32B236.lnk
C:\WINDOWS\system32\431CAD\32B236.EXE   
希望用精简的代码 谢谢

新手边学边写

评分

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

查看全部评分

发表于 2011-6-13 23:20:28 | 显示全部楼层
这个以前好像在哪见人写过
  1. @echo off
  2. for /f "tokens=*" %%i in (1.txt) do echo,%%i>>2.txt
复制代码

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

发表于 2011-6-14 00:47:34 | 显示全部楼层
为什么要用精简的代码?既然是新手就要用基础的代码。
等你进阶了,自然就可以写出精简的代码。
 楼主| 发表于 2011-6-14 12:51:46 | 显示全部楼层
3# applba

哦,谢谢
发表于 2011-6-14 13:02:02 | 显示全部楼层
  1. sed "s/^ //" a.txt | more >b.txt
复制代码
http://bbs.bathome.net/thread-1114-1-1.html

评分

参与人数 1技术 +1 收起 理由
mxxcgzxxx + 1 乐于助人

查看全部评分

发表于 2011-6-14 15:50:00 | 显示全部楼层
2# 601997526
这空格是怎么去掉的呢?
  1. @echo off
  2. set a=  hello
  3. echo,%a%
  4. pause>nul
复制代码
上面这个去不掉,能解释一下原理吗
发表于 2011-6-14 16:47:52 | 显示全部楼层
本帖最后由 zm900612 于 2011-6-14 17:55 编辑

6# Hello123World


for /f中的默认分隔符"delims=[tab][半角空格]"(原以为全角空格也是默认分隔符,多谢楼下两位指正),默认tokens=1代表以delims中的设置为分隔符取字符串的第一节。
当tokens=*时代表取从第一节开始之后的所有内容,也就是说,它把字符串开头的分隔符舍弃了,也就起到了去除多余空格的目的。

echo;%a%的想法不错,不过在echo中貌似是不可行的,倒是在win7的set /p中可以,因为win7的set /p会自动舍弃字符串最开始的空格。

评分

参与人数 1PB +5 收起 理由
Hello123World + 5 多谢指教

查看全部评分

发表于 2011-6-14 17:18:38 | 显示全部楼层
全角空格  貌似不是

评分

参与人数 1PB +2 收起 理由
zm900612 + 2 感谢指正

查看全部评分

发表于 2011-6-14 17:26:12 | 显示全部楼层
全角空格  貌似不是
我是马甲 发表于 2011-6-14 17:18

经测试,确实不是。(测试环境: XP SP2)
发表于 2011-6-14 17:56:38 | 显示全部楼层
多谢纠错,已修正
发表于 2011-6-15 21:07:54 | 显示全部楼层
看了7楼的代码,方明白是,惹的祸。
@echo off
for /f "tokens=*" %%i in (1.txt) do echo,%%i>>2.txt

这里echo 后面的,是多余的。
发表于 2011-6-15 22:02:00 | 显示全部楼层
而且让我加深了对delims 和tokens 的理解,“delims=” 和 “tokens=*” 在这里区别就出来了(以前我一直是当做一样的作用在用)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-17 13:54 , Processed in 0.021344 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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