中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 搜索 | 上传 | 帮助 »
作者:
标题: 错在哪儿? 上一主题 | 下一主题
radem
高级用户

CMD感染者


积分 691
发帖 383
注册 2008-5-23
状态 离线
『楼 主』:  错在哪儿?

建了个CS服闹着玩,由于我的是动态IP,而添加SXE要修改IP参数,于是弄个P来完成:
@echo off
set /p lip=<lip.txt
del ips.asp 1>nul 2>&1
wget http://www.ip138.com/ips.asp 1>nul 2>&1
for /f "tokens=2 skip=2 delims=[]" %%i in ('find "您的IP地址是:" ips.asp') do set "ip=%%i"
del ips.asp 1>nul 2>&1
echo 上次导入IP是:%lip%
echo 现在公网IP是:%ip%
if %lip%==%ip% echo 两次相同!
set /p cf=需要将它导入吗?Y键确认,其他退出:
if %cf%=="y" goto :cip || goto :eof
:cip
echo.
echo 正在导入,请稍候...
U82GB.vbs "server.cfg"
for /f "delims=" %%j in (server.cfg) do (
    echo.%%j | findstr/i "__sxei_internal_ip">nul && echo __sxei_internal_ip %ip%||echo %%j
    )>>sv.tmp
move sv.tmp server.cfg
GB2U8.vbs "server.cfg"
echo.%ip%>lip.txt
cls&echo 已成功把%ip%导入!
pause
本想设计输入"Y"才导入,但是现在只有直接回车才退出,输入任何键都会导入,究竟错在哪?




2008-6-24 12:46
查看资料  发短消息  网志   编辑帖子  回复  引用回复
hongewuyan
初级用户





积分 65
发帖 29
注册 2008-3-24
状态 离线
『第 2 楼』:  

if /i “%cf%”=="y" goto :cip || goto :eof 这行 %cf%加引号看看,另外建议加/I不区分大小写。。。


2008-6-24 12:48
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
radem
高级用户

CMD感染者


积分 691
发帖 383
注册 2008-5-23
状态 离线
『第 3 楼』:  

谢谢!还是不行




2008-6-24 12:53
查看资料  发短消息  网志   编辑帖子  回复  引用回复
kgdetg1127
初级用户





积分 158
发帖 89
注册 2007-4-25
状态 离线
『第 4 楼』:  

if /I %cf%==y goto :cip goto :eof


2008-6-24 13:18
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
kgdetg1127
初级用户





积分 158
发帖 89
注册 2007-4-25
状态 离线
『第 5 楼』:  

if not %cf%==y goto :eof ||goto :cip


2008-6-24 13:22
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
radem
高级用户

CMD感染者


积分 691
发帖 383
注册 2008-5-23
状态 离线
『第 6 楼』:  

Originally posted by kgdetg1127 at 2008-6-24 01:22 PM: if not %cf%==y goto :eof ||goto :cip
无法跳转到cip 导入失败




2008-6-24 13:53
查看资料  发短消息  网志   编辑帖子  回复  引用回复
hongewuyan
初级用户





积分 65
发帖 29
注册 2008-3-24
状态 离线
『第 7 楼』:  

我想 if /i “%cf%”=="y" goto :cip || goto :eof 这样的写法本身就有问题,无论输入正确与否,||后的goto :eof都不会得到执行。 建议那几行这样修改: if /i "%cf%"=="y" goto :cip goto :eof :cip 这样当输入为Y时即跳转到clip,否则执行下一行自动跳转到eof


2008-6-24 15:05
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
bat-zw
金牌会员

永远的学习者


积分 3105
发帖 1276
注册 2008-3-8
状态 离线
『第 8 楼』:  

if /i "%cf%" neq "y" goto :eof echo. echo 正在导入,请稍候...


   此帖被 +2 点积分    点击查看详情   
评分人:【 radem 分数: +2  时间:2008-6-25 13:02




批处理之家新域名:www.bathome.net
2008-6-24 15:10
查看资料  发送邮件  发短消息  网志  OICQ (841615149)  编辑帖子  回复  引用回复
wxcute
中级用户





积分 458
发帖 211
注册 2006-7-26
状态 离线
『第 9 楼』:  

if %cf%=="y" goto :cip || goto :eof :cip 改成: if %cf%=="y" goto :cip else goto :eof :cip 或 if not "%cf%"=="y" goto :eof




┌───────┐ ├→学习→实践→┤ └───────┘
2008-6-24 21:48
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
radem
高级用户

CMD感染者


积分 691
发帖 383
注册 2008-5-23
状态 离线
『第 10 楼』:  

Originally posted by zw19750516 at 2008-6-24 03:10 PM: if /i "%cf%" neq "y" goto :eof echo. echo 正在导入,请稍候...
就是它!谢了




2008-6-25 18:46
查看资料  发短消息  网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: