中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-05 04:32
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 请帮忙解释一下这个代码 查看 747 回复 6
楼 主 请帮忙解释一下这个代码 发表于 2007-06-29 19:54 ·  中国 贵州 铜仁 电信
初级用户
积分 51
发帖 21
注册 2007-06-27 20:32
19年会员
UID 92534
性别 男
状态 离线
@echo off
:star
set Output=
set /p Enter=请输入:
:Start
if not "%Enter%"=="" (
set Output=%Output%%Enter:~-1%
set Enter=%Enter:~0,-1%
goto :Start)
echo.
echo %Output%
pause >nul&goto :Star


请问谁能帮我解释一下上面的代码是什么意思~!
谢谢了~!
最好能详细点~!

[ Last edited by bjsh on 2007-7-31 at 10:30 AM ]
2 发表于 2007-06-29 19:59 ·  中国 浙江 电信
中级用户
★★
积分 385
发帖 156
注册 2007-01-19 02:32
19年会员
UID 76955
性别 男
状态 离线
@echo off
:star ‘行标
set Output= ’设置变量
set /p Enter=请输入: ‘获取输入的值
:Start ’行标
if not "%Enter%"=="" ( ‘如果输入的值不是空,则……
set Output=%Output%%Enter:~-1% ’我也不懂
set Enter=%Enter:~0,-1% ‘我也不懂
goto :Start) ’到start的那行起
echo. ‘换行
echo %Output% ’输出Output环境变量的值
pause >nul&goto :Star ‘暂停并到star的行



我也比较菜,只能帮你到这里了。
另外弱弱的提醒一句,楼主注意标题格式喔
3 发表于 2007-06-29 20:02 ·  中国 贵州 铜仁 电信
初级用户
积分 51
发帖 21
注册 2007-06-27 20:32
19年会员
UID 92534
性别 男
状态 离线
还是 谢谢了~!不过你不懂的地方恰恰是我不懂的~!
我寒~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4 发表于 2007-06-29 20:10 ·  中国 天津 电信
银牌会员
★★★
积分 1,928
发帖 931
注册 2007-01-06 11:46
19年会员
UID 75624
性别 男
状态 离线
set Output=%Output%%Enter:~-1% ’就是赋值啦,把output变量的值加上enter变量的倒数第一个值赋值给output变量
set Enter=%Enter:~0,-1% ‘把enter变量从第一位开始取,取到倒数第二位(-1代表不取倒数第一位)赋值给变量enter
5 发表于 2007-06-29 20:11 ·  中国 天津 电信
银牌会员
★★★
积分 1,928
发帖 931
注册 2007-01-06 11:46
19年会员
UID 75624
性别 男
状态 离线
在cmd里输入set /?有详细说明的
6 发表于 2007-06-29 20:12 ·  中国 贵州 铜仁 电信
初级用户
积分 51
发帖 21
注册 2007-06-27 20:32
19年会员
UID 92534
性别 男
状态 离线
多谢强人~!偶去 看看~!
7 发表于 2007-06-29 22:39 ·  中国 贵州 铜仁 电信
初级用户
积分 51
发帖 21
注册 2007-06-27 20:32
19年会员
UID 92534
性别 男
状态 离线
谢谢强人~!我已经完全明白了~!
论坛跳转: