【问题标题】:print string on a browser, shell script在浏览器上打印字符串,shell 脚本
【发布时间】:2017-10-17 09:55:15
【问题描述】:

我找不到在浏览器上打印 shell 脚本中的字符串的命令。例如在stackoverflow上。我想创建一个在搜索栏中写入字符串并进行搜索的脚本

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)。

标签: bash shell


【解决方案1】:

可能有一种近似的方式来做你想做的事(在 Linux Debian 8 中测试过)。您可以 -- 作为普通用户,而不是 root(原因是see this) -- 运行以下命令(在终端上):

firefox "http://stackoverflow.com/search?q=my_search_term"

这将在 Stack Overflow 页面上打开 firefox,该页面将显示术语 my_search_term 的搜索结果。

如果您需要在以root 身份运行的脚本上运行此代码,如果您以“普通”用户而不是root 身份运行此命令,仍然可以(安全地)运行此命令,例如如:

su - myuser -c 'firefox "http://stackoverflow.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://stackoverflow.com/search?q=foobar

    【讨论】:

    • 如果您只是要链接到另一个问题,请将其标记为重复。
    猜你喜欢
    • 2017-12-03
    • 2010-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多