bash:如何使用查询参数制作可点击的链接?

ram*_*rur 5 url bash search

我试图在需要可点击的终端上转储 url,并且该 url 带有一个查询参数。例如 -

google='https://www.google.com/search?q='
orgname='foo bar'
gsearch=$google\'$orgname\' 
echo "details: $orgname ($gsearch)"
Run Code Online (Sandbox Code Playgroud)

但问题是,可点击的链接完全忽略了 ie 之后的所有内容q=,不包含该字符串'foo bar',请参见下图 -

在此输入图像描述

如何制作包含查询的可点击链接(即上面大括号中的整个网址)?

另请注意,我在搜索参数中添加引号,因为它可能包含空格。

tha*_*guy 5

单引号在 URL 中无效。使用 URL 编码%27代替:

google='https://www.google.com/search?q='
orgname='foo'
gsearch=$google%27$orgname%27
echo "details: $orgname ($gsearch)"
Run Code Online (Sandbox Code Playgroud)

请注意,为了选择或单击的目的,决定 URL 的一部分的是终端,而不是您的脚本。上面的结果是

https://www.google.com/search?q=%27foo%27
Run Code Online (Sandbox Code Playgroud)

在大多数终端中,它更容易点击。该脚本无法指定 URL 的范围,除非以标准方式表达它,以便每个单独的终端仿真器都有相当大的机会识别它。

PS:我不认为谷歌关心周围的单引号。

  • @ramgorur 完全忘记了单引号或 `%27` - 这是您想要用 `%20` 替换的空格 (2认同)