[英]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 /?
,按RETURN或ENTER键 ,现在在控制台窗口中读取帮助输出以获取命令集 。
使用参数/?
执行Windows命令或Windows控制台应用程序/?
通常会导致获得在命令提示符窗口中显示的此命令/控制台应用程序的简短描述。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.