Linux:从命令行打开URL,然后等待指定的时间,然后关闭Web浏览器

时间:2017-04-09 20:20:23

标签: linux bash firefox command-line

我试图创建一个可以完成以下任务的脚本:

  1. 使用指定的网址启动Firefox网络浏览器。
  2. 暂停5秒(使用timeout命令)
  3. 使用wmctrl正确关闭Firefox。
  4. 剧本:

    #!/bin/bash
    firefox http://www.google.com
    timeout 5; DISPLAY=:0.0 wmctrl -c "firefox"
    

    但是,运行脚本后,我必须手动关闭Firefox。超时命令无法正常运行。

1 个答案:

答案 0 :(得分:0)

我相信你想要sleeptimeout是一个coreutils工具,其语法依赖于你想在一定时间后停止运行的命令:timeout [OPTION] DURATION COMMAND [ARG]

超时工作原理如下:

timeout 5 firefox http://www.google.com.ar

会在5秒后关闭firefox,但不会像你想要的那样“优雅”,而是发送SIGTERM(除非另有说明)。

如果你想启动firefox,请等待5秒,然后继续使用wmctrl关闭它:

#!/bin/bash
firefox http://www.google.com
sleep 5; DISPLAY=:0.0 wmctrl -c "firefox"