繁体   English   中英

如何使用BATCH开始字符串

[英]How to start a string using BATCH

我正在尝试制作一个程序,它将在google中搜索用户输入的内容以创建此内容:

@echo off set "str1=www.google.co.uk/search?q=" echo What shall i do? set /p Input= set "str2=%str1%%Input%" Start "str2" Pause :END

问题是,当启动“ str2”时,它只是打开一个名为“ str2”的新命令提示符窗口,但是我希望它运行“ str2”,即Google url,我该如何实现? 另外,如果我在输入中输入了两个词,例如“大象宝宝”,那么我将如何实现我要它搜索“大象宝宝”而不只是“大象”的功能?

感谢帮助

-地图集

这是为有效的Google查询扩展的代码(并非对所有可能的查询都完整):

@echo off
setlocal EnableDelayedExpansion
set "SearchUrl=https://www.google.co.uk/search?q="
set /p "Input=Enter search query: "
set "SearchUrl=%SearchUrl%!Input: =+!"
set "SearchUrl=!SearchUrl:"=%%22!"
start "Google Search" "%SearchUrl%"
endlocal
pause

set /p之后的第一行将预定义的字符串与用户输入的字符串连接在一起,从而在Google查询中根据需要用加号替换每个空格。

在下一行,对于Google查询,输入的搜索查询中的所有双引号都将替换为%22

通过输入"Stack Overflow"运行此批处理文件将导致使用URL启动默认浏览器:

https://www.google.co.uk/search?q=%22Stack+Overflow%22

有关带有感叹号而不是百分号的setlocal引用变量的详细信息,以防止延迟扩展以及这些变量如何在输入的字符串中工作,请打开命令提示符窗口,输入set /? ,按RETURNENTER键 ,现在在控制台窗口中读取帮助输出以获取命令

使用参数/?执行Windows命令或Windows控制台应用程序/? 通常会导致获得在命令提示符窗口中显示的此命令/控制台应用程序的简短描述。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM