中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-10 06:58
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 用变量扩展合并行问题 查看 660 回复 2
楼 主 用变量扩展合并行问题 发表于 2008-11-06 13:47 ·  中国 江苏 苏州 电信
初级用户
★★
积分 133
发帖 75
注册 2008-08-03 01:08
18年会员
UID 122677
性别 男
状态 离线
有一文件test.txt中有2行: 123
456
现在我要合并行:
@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%i in (test.txt) do (
set=%%i
set=!str!%%i
)
echo !str!
pause>nul
不能实现。
@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%i in (test.txt) do (
call set str=!str!%%i
)
echo !str!
pause>nul
这个便可。

请问@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%i in (test.txt) do (
set=%%i
set=!str!%%i 请问如何改变set语句可以实现合并行??
)
echo !str!
pause>nul
2 发表于 2008-11-06 14:09 ·  中国 江西 赣州 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
18年会员
UID 96653
性别 男
状态 离线
既然第二段代码可行,为什么还会有什么疑问?第二段可以去掉 call
3 发表于 2008-11-06 18:14 ·  中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
第一段修改如下
@echo off 
setlocal enabledelayedexpansion
for /f "delims=" %%i in (test.txt) do (
set str=!str!%%i
)
echo !str!
pause>nul
论坛跳转: