中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-06 05:28
48,039 主题排行 / 350,124 发帖 / 今日 2 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » 如何利用批处理追加不换行
可打印版本  1,963 / 8
第1楼 beeny 发表于 2007-04-09 23:01
初级用户 发帖 49 积分 136
如何利用批处理追加不换行
09165365064|
09165365097|
09165368188|
09165364018|
09165364091|
09165364380|
09165364491|
。。。。。。。。
。。。。。。。。
要将上面号码批处理成下面这个样子怎么办?
09165365064|09165365097|09165368188|09165364018|09165364091|09165364380|09165364491。。。。。。。。。。。。。。
就是说在追加的时候不换行!


就是说原来的电话号码是一行一个,现在要将所有号码合在一起,号码与号之间用"|"竖线隔开并且不换行的保存到别一个记事本里!

[ Last edited by beeny on 2007-4-9 at 11:50 AM ]

附件
1.JPG (77.68 KiB)
第2楼 Climbing 发表于 2007-04-10 00:28
铂金会员 发帖 2,753 积分 6,962 来自 河北保定
问题描述不清,无法解答。

可以试试for循环加设置环境变量(但不知道环境变量会不会有大小限制)。

或者试试lmod这个命令。

或者试试使用十六进制替换命令将ODOA替换为无。
第3楼 beeny 发表于 2007-04-10 01:02
初级用户 发帖 49 积分 136
setlocal enabledelayedexpansion
for /f %%a in (E:\123.txt) do set fn+=%%a
@echo !fn!>>c.txt

上面代码是按VB的意思写的但是运行不对啊!达不到我想要的效果!
第4楼 vkill 发表于 2007-04-10 01:11
金牌会员 发帖 1,744 积分 4,103 来自 甘肃.临泽
>>life set/p=^abc<nul
第5楼 pillow 发表于 2007-10-24 15:26
初级用户 发帖 82 积分 196
真不容易,找到这么个与我问题很像的问题。

我的问题是比beeny的要求稍微再高一点点,就是追加不換行,而且还要隔开,需要加入数个tab或是空格;用set /p=虽然能不换行,但死活无法插入空格或是tab,若是用了echo,就直接换行了。

用beeny的实例来讲就是要实现这样:
09165365064 09165365097
09165368188 09165364018
09165364091 09165364380
…………

即每行中第二列数字是运算出来的,希望被tab隔开,追加到行尾。
第6楼 lxmxn 发表于 2007-10-24 22:37
版主 发帖 4,938 积分 11,386
第7楼 pillow 发表于 2007-10-25 08:23
初级用户 发帖 82 积分 196
谢谢lxmxn的指点!

在我的实例中,第一列的长度是不固定的(人名),导致最后生成的部分不整齐,所以之前的问题是用空格或tab隔开,所以就想请教剩下的这个很久以来一直好奇的问题:

可以用tab做为分隔符吗?是否能动态(或根据其它变量来决定)生成不定个数的tab做分隔符?

[ Last edited by pillow on 2007-10-25 at 08:29 AM ]
第8楼 pillow 发表于 2007-10-25 08:33
初级用户 发帖 82 积分 196
以前都是在cmd中想直接echo出tab来的,所以没能成功。
自己刚才试过了,可以直接在编辑BAT文件set/p=%%a <nul时的a与<之间直接输入tab,就能显示出来了。


现在问题剩下的就是:
是否能动态(或者说根据其它变量的值来决定)生成特定个数的tab做分隔符?
第9楼 zhclsy 发表于 2007-10-25 09:54
初级用户 发帖 34 积分 83
呵呵,很好呀
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023