批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程
[批处理文件精品]批处理版照片整理器[批处理文件精品]纯批处理备份&还原驱动在线第三方下载
返回列表 发帖

[文本处理] 批处理获取的参数,空格变成20%

本帖最后由 xiaodevps 于 2019-3-11 17:39 编辑

代码

@echo on
set m=%1%
ping %m%
pause
exit

其中引用的m如果有空格的话,在某些情况下会显示 ping%20www.163.com   ,正常的情况应该是  ping www.163.com ,但是某些情况下是 ping%20www.163.com  中间的空格变成了%20,请问如何解决呢?

  1. set m=%~1
  2. ping %m: =%
  3. pause
复制代码
【扫描二维码捐助论坛的朋友请留言注明论坛账号】http://bbs.bathome.net/thread-10403-1-1.html
【批处理在线视频分享】http://bbs.bathome.net/thread-31727-1-1.html
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html

TOP

谢谢,但是还是不行。

TOP

回复 3# xiaodevps


    请给个完整的测试用例和测试结果,我试试。
【扫描二维码捐助论坛的朋友请留言注明论坛账号】http://bbs.bathome.net/thread-10403-1-1.html
【批处理在线视频分享】http://bbs.bathome.net/thread-31727-1-1.html
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html

TOP

本帖最后由 xiaodevps 于 2019-3-12 10:15 编辑
回复  xiaodevps


    请给个完整的测试用例和测试结果,我试试。
Batcher 发表于 2019-3-11 21:57



先导入注册表值

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\alert]
@="URL:Alert Protocol"
"URL Protocol"=""

[HKEY_CLASSES_ROOT\alert\DefaultIcon]
@="cmd,1"

[HKEY_CLASSES_ROOT\alert\shell]

[HKEY_CLASSES_ROOT\alert\shell\open]

[HKEY_CLASSES_ROOT\alert\shell\open\command]
@="cmd /c set m=%1 & call set m=%%m:alert:=%% & call \"d:\\123.bat\" %%m%%"




然后自己写一个html代码

<a href="alert://163.com -t" />ping test  


使用谷歌浏览器与EDGE打开html获得的参数都带有  %20

TOP

  1. @echo on
  2. title 代码可用,扫码头像,感谢赞助;有什么问题,可加QQ956535081及时沟通
  3. set m=%1
  4. setlocal enabledelayedexpansion
  5. set m=!m:%%20= !
  6. ping !m:/=!
  7. pause
  8. exit
复制代码
提供代写,省时省力省事,支付宝扫码头像支付,QQ956535081

TOP

zaqmlp 发表于 2019-3-12 11:04



   

谢谢,谷歌浏览器可用,但是edge与IE用不了。

TOP

用其他字符代替空格,bat里再清除就是了
提供代写,省时省力省事,支付宝扫码头像支付,QQ956535081

TOP

本帖最后由 xiaodevps 于 2019-3-12 12:16 编辑

还有个问题,例如 ping  http://163.com -t    变成了  ping  http:163.com -t

中间的 // 被删除了,该如何保留呢?

TOP

学习了。。

TOP

返回列表