如何让程序在一段时间后在终端中启动

如何让程序在一段时间后在终端中启动

我想创建一个快捷方式,这样每次单击它时都会运行 utorrent,而无需每次都在终端中执行所有命令......

我创建了一个脚本,运行 cd 我的 utorrent 文件夹,然后执行 ./utserver。之后,我需要让我的 Firefox 在 u torrent 链接“http://localhost...etc”中打开。但我的问题是 ./torrent 大约需要 2-3 分钟才能完成,尽管在这段时间内,如果我在 Firefox 中手动打开 u torrent 的链接,它会正常启动,所以我需要一个命令,即使 ./utorrent(命令)没有完成,它也会在大约 4-5 秒后在 Firefox 中打开此链接...

(但启动后不会立即执行,因为 utorrent 无法启动)有人知道我该怎么做吗?

提前致谢。

答案1

另一种选择是sleep

sleep 360; /path/to/firefox blah blah (或者如果在脚本中则放在单独的行上)

Sleep 接受一个以秒为单位的参数,并等待这么长时间才停止并让 shell 继续运行。在这种情况下,如果脚本中包含此内容,请确保在脚本之后运行,&否则您的终端将被阻止,直到脚本完成。

./myScript &

如果你想关闭终端而不停止脚本

nohup ./myscript >/dev/null 2>&1 &

答案2

at 的手册页

at 实用程序将从标准输入读取命令并将它们组合在一起作为 at-job,以便稍后执行。

例子:

$ at 12:49
at> script
at> <EOT>

并在 12:49 执行“脚本”(如果它是可执行的;))。您可以使用该-m选项在您的(本地)邮箱中获取通知。

您可以在后面放置很多选项at(请查看手册页)。

相关内容