中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-12 23:11
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 【已结,多谢大家帮助】如何按列输出文字至TXT 查看 1,169 回复 7
楼 主 【已结,多谢大家帮助】如何按列输出文字至TXT 发表于 2009-11-28 17:27 ·  中国 广东 深圳 电信
初级用户
积分 33
发帖 23
注册 2009-02-17 17:01
17年会员
UID 139095
性别 女
状态 离线
我只知道按行输出的方法,不知DOS是否有按列输出的,现有如下需求,请大家帮忙

现有如下两个文件,a.txt内容为
1
2
3
b.txt内容如下
4
5
6
想要得到的c.txt内容如下
1 4
2 5
3 6

(4,5,6那列后面还可以有很多列的)
请问大家,可以实现吗

[ Last edited by blancy on 2009-12-28 at 12:25 ]
新手上路,请多关照
2 发表于 2009-11-28 18:04 ·  中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
paste -d " " a.txt b.txt >c.txt
3 发表于 2009-11-28 18:32 ·  中国 广东 深圳 电信
初级用户
积分 33
发帖 23
注册 2009-02-17 17:01
17年会员
UID 139095
性别 女
状态 离线
我试了,但是DOS提示paste不是内部或外部命令....
新手上路,请多关照
4 发表于 2009-11-29 08:47 ·  中国 河北 廊坊 三河市 移动
金牌会员
★★★★
积分 2,725
发帖 1,160
注册 2006-09-23 12:00
19年会员
UID 63486
来自 河北廊坊
状态 离线
三人行,必有吾师焉。 学然后知不足,教然后知困,然后能自强也。
5 发表于 2009-11-29 22:46 ·  中国 北京 鹏博士BGP
初级用户
积分 33
发帖 23
注册 2009-02-17 17:01
17年会员
UID 139095
性别 女
状态 离线
是否可以详细说明一下这个是什么?
是一个安装软件?可执行程序?希望自己可以知其然知其所以然,多谢
新手上路,请多关照
6 发表于 2009-12-02 07:56 ·  中国 北京 联通
新手上路
积分 5
发帖 3
注册 2009-06-30 11:50
17年会员
UID 148440
性别 男
状态 离线
你可以利用FOR来一下比如这样,以下是不完整的,需要你的a.txt与b.txt第一行是空出来的,而且当任何一个没有数值了 就会退出不再生成

@echo off
set c=1
:start
for /f "skip=%c% tokens=1 delims= " %%a in (a.txt) do (
for /f "skip=%c% tokens=1 delims= " %%b in (b.txt) do (
echo %%a %%b>>c.txt
set /a c=c+1
goto start
))
7 发表于 2009-12-02 21:22 ·  中国 福建 厦门 教育网
新手上路
积分 17
发帖 16
注册 2009-10-16 19:14
16年会员
UID 153178
性别 男
状态 离线
以下代码应该可以帮你解决问题,但所有文本中的行数必须相等。

@echo off
setlocal enabledelayedexpansion

for %%a in (*.txt) do (
set n=0
for /f %%b in (%%a) do (
set /a n=!n!+1
call set L!n!=%%L!n!%% %%b))
for /l %%a in (1,1,%n%) do echo !L%%a!>>final.txt
pause
8 发表于 2009-12-28 12:25 ·  中国 广东 深圳 电信
初级用户
积分 33
发帖 23
注册 2009-02-17 17:01
17年会员
UID 139095
性别 女
状态 离线
多谢大家
新手上路,请多关照
论坛跳转: