找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 39062|回复: 8

[特效代码] 批处理不能输出变量值中的%百分号如何处理?

[复制链接]
发表于 2009-10-24 12:21:09 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2016-7-11 11:13 编辑

大家好,下面的关于163邮箱登录的一个例子(某高手所作),代码如下:
  1. @echo off
  2. set u=testrat
  3. set p=aaa111
  4. start "" "http://reg.163.com/login.jsp?type=1&url=http://fm163.163.com/coremail/fcg/ntesdoor2?lightweight=1&verifycookie=1&language=-1&style=-1&username=%u%&password=%p%"
复制代码
但是我更换成我的用户名和密码却提示密码错误,因为我的密码中含有百分号,用不含%的密码却可以登录,查看了一些资料,说要用到转义字符,但是我用两个%试过了,还是不行,这该如何解决呢?
请不吝指教,谢谢!
 楼主| 发表于 2009-10-24 12:34:30 | 显示全部楼层
这里是密码含有%的一个邮箱测试,却不行:
  1. @echo off
  2. title 163邮箱登陆器
  3. color a
  4. SET id=atesta
  5. set pwd=123456%
  6. start "开始登录你的邮箱" "https://reg.163.com/logins.jsp?username=%id%&password=%pwd%&url=http://fm163.163.com/coremail/fcg/ntesdoor2"
复制代码
这是为什么呢?
发表于 2009-10-24 15:48:51 | 显示全部楼层
你试一下,把set pwd=123456%,改成set pwd=123456%%。
 楼主| 发表于 2009-10-24 17:21:23 | 显示全部楼层
我已经试过了,还是不行的……
发表于 2009-10-25 13:12:43 | 显示全部楼层
要该成%%%吧....我没试
发表于 2010-4-30 23:40:24 | 显示全部楼层
5楼的建议应该可以。用3个%%%就可以得到1个%
@echo off
set pwd=123456%%%
echo %pwd%
pause
测试么得问题
发表于 2010-5-1 00:12:48 | 显示全部楼层
set pwd=123456%%25
 楼主| 发表于 2010-6-29 13:22:41 | 显示全部楼层

回复 8楼 的帖子

太强了,佩服之至!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-21 07:53 , Processed in 0.032928 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表