在浏览器上打印字符串,shell 脚本
Posted
技术标签:
【中文标题】在浏览器上打印字符串,shell 脚本【英文标题】:print string on a browser, shell script 【发布时间】:2017-10-17 09:55:15 【问题描述】:我找不到在浏览器上打印 shell 脚本中的字符串的命令。例如在***上。我想创建一个在搜索栏中写入字符串并进行搜索的脚本
xdotool mousemove x y # position of the searchbar
xdotool mouseclick 1 # leftclick
[[command that writes a string on the searchbar]]
xdotool key KP_Enter # press enter
应该很简单,但我找不到
【问题讨论】:
你不能简单地在搜索栏的顶部写上文本,然后期望它被传递给浏览器;您需要一个可以以编程方式与浏览器交互的工具,或者至少与窗口管理器交互的工具。bash
两者都不是。
@chepner 有一种解决方法可以完成大部分(如果不是全部)关于该问题的问题。检查我的答案(欢迎 cmets)。
【参考方案1】:
可能有一种近似的方式来做你想做的事(在 Linux Debian 8 中测试过)。您可以 -- 作为普通用户,而不是 root(原因是see this) -- 运行以下命令(在终端上):
firefox "http://***.com/search?q=my_search_term"
这将在 Stack Overflow 页面上打开 firefox
,该页面将显示术语 my_search_term
的搜索结果。
如果您需要在以root
身份运行的脚本上运行此代码,如果您以“普通”用户而不是root
身份运行此命令,仍然可以(安全地)运行此命令,例如如:
su - myuser -c 'firefox "http://***.com/search?q=my_search_term"'
要找出应该使用谁来运行上述命令的user
,最好的选择之一是使用logname
命令,例如:
myuser="$(logname 2>/dev/null)"
注意:这种解决方法也适用于许多其他网站,例如 Google,只需替换为正确的url
地址,例如:
firefox "http://www.google.com/search?q=my_search_term"
【讨论】:
【参考方案2】:在这个question 中回答有用吗?只需将 url 替换为适当的搜索字符串 https://***.com/search?q=foobar
【讨论】:
如果您只是要链接到另一个问题,请将其标记为重复。以上是关于在浏览器上打印字符串,shell 脚本的主要内容,如果未能解决你的问题,请参考以下文章
查找并打印出字符串中特定字符的出现次数 (shell/AIX)