中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-06 05:25
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » echo{ & >>samplefile 的语法问题 查看 646 回复 5
楼 主 echo{ & >>samplefile 的语法问题 发表于 2007-10-27 19:29 ·  德国
新手上路
积分 8
发帖 3
注册 2007-10-27 18:56
18年会员
UID 100946
性别 男
状态 离线
一个批处理文件中有这样的语句:
echo{ & >>samplefile
echo sample, & >>samplefile
echo}, & >>samplefile
我在windows xp的dos模式下输入上面的命令,总是提示有语法错误。我想它的原意是要 输出一个samplefile文件,文件内容为: {sample},。如果是这样的话每行中只需要用>>就可以了。如果用& >>则系统认为&后应该是另一个命令,而不应是>>, 这大概也是系统提示出错的原因。
但这是个存档的文件,应该是验证过的。请问高手们在什么条件下上面的句子可能是正确的?
2 发表于 2007-10-27 19:39 ·  中国 浙江 杭州 电信
高级用户
★★
积分 537
发帖 219
注册 2007-08-04 09:43
19年会员
UID 94620
性别 男
来自 杭州--半山
状态 离线
^&
3 re 发表于 2007-10-27 20:11 ·  德国
新手上路
积分 8
发帖 3
注册 2007-10-27 18:56
18年会员
UID 100946
性别 男
状态 离线
可是存档的批处理文件中没有用^&啊。而且如果用echo sample ^& >>samplefile的话,samplefile文件中的内容会是sample &.
4 发表于 2007-10-27 22:11 ·  中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
半天才看明白不就
echo {sample,}>>samplefile
第一高手 第二高手

5 发表于 2007-10-28 03:31 ·  德国
新手上路
积分 8
发帖 3
注册 2007-10-27 18:56
18年会员
UID 100946
性别 男
状态 离线
谢谢两位的答复。不过是不是因为我多写了几句反倒让大家误解了我的问题。
(输出内容为{sample,}的文件不一定是批处理文件的原意,只是我自己的想法)

我的问题是:
一个批处理文件中有这样的语句:
echo{ & >>samplefile
echo sample, & >>samplefile
echo}, & >>samplefile
在什么条件下上面的句子是正确的? 执行上述语句的结果是什么?
6 发表于 2007-10-28 12:29 ·  中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
任何情况下都不正确的!既然错误的语法就什么也没执行!
莫非你想简单复杂化?
@echo off
setlocal enabledelayedexpansion
set slz={sample}
cd.>samplefile
for /l %%i in (0,1,7) do set/p=!slz:~%%i,1!<nul>>samplefile
第一高手 第二高手

论坛跳转: