在Linux中运行1小时后执行命令

时间:2015-11-24 19:01:23

标签: linux unix command at-command

我只想在1小时后回复我的字符串 。我看到了命令,但它可以在特定时间运行脚本(HH:MM)。无论什么时候,我希望我的echo命令在1小时后运行。

3 个答案:

答案 0 :(得分:21)

sleep 60m && ls

答案 1 :(得分:1)

您还可以使用at(at非常擅长理解时间,请参见this page以获得很多很好的示例)。

> at now + 1 hour
at> echo 'my string' > /dev/stdout
at> ^D

输入at time规范后,它将带您到at提示符(您的OS我或我不显示at>提示符,例如OSX都不显示)。然后,键入要执行的任何命令,然后按Control-D退出提示符。一个警告:at将运行您的命令并将结果邮寄给您。因此,如果您希望输出显示在终端上,则应将输出定向到适当的设备:/ dev / stdout和/ dev / tty通常可以工作。

答案 2 :(得分:0)

根据sleep手册页,sleep

  

暂停NUMBER秒。 SUFFIX可能是“ s”代表秒(默认值),“ m”代表分钟,“ h”代表小时或“ d”代表天。与大多数要求NUMBER为整数的实现不同,这里NUMBER可以是任意浮点数。给定两个或多个参数,暂停它们的值总和所指定的时间。

因此,您可以使用sleep 1hsleep 60msleep 3600s或仅使用sleep 3600睡眠1小时,然后执行命令ls。例如sleep 1h && echo "hello world"