【问题标题】:How do I add time in terminal?如何在终端中添加时间?
【发布时间】:2019-11-01 06:37:46
【问题描述】:

我想创建一个从现在开始在 30 分钟或 60 分钟内运行一次的 cron 作业。我知道我可以通过使用 date +"%T" 来获取现在的时间,但我不确定如何添加 30 或 60 分钟,然后在 cron 作业中使用它。

【问题讨论】:

  • Cron 作业适用于您希望定期运行的内容。要只运行一次,请查看at 命令。
  • date +"%T" -d "+1 hour"
  • @BenjaminW。我试过 sudo echo "pfctl -d" |现在 +60 分钟,但这也没有用。等待时间之后什么都没有发生。我已经尝试了 +1 分钟,因为我不想浪费整整一个小时
  • @Buraq:您可能需要将sudo 移动到正在回显的字符串中并进行设置,以便不需要密码:echo "sudo pfctl -d" | at now +60 minutes
  • @BenjaminW。 at 命令无法在终端上运行,因为它失败了: 系统策略:拒绝(1)文件写入创建 /private/var/at/spool/a0004c018d03a3 我已将 spool 的所有者更改为 root 但仍然不行跨度>

标签: bash terminal cron


【解决方案1】:

这是一种快速而简单的方法,可以在 30 分钟后执行任务:

# (30 min = 1800 sec)
nohup bash -c 'sleep 1800; echo "Hello world"';

或者,如果你想在 30 分钟后执行它,然后在 60 分钟后再次执行,那么:

nohup bash -c 'sleep 1800; echo "Hello world"; sleep 3600; echo "Hello world"' &

注意强调quick-and-dirty

【讨论】:

  • 就像你说的,它很脏,很容易坏。我正在寻找更强大的东西。谢谢
猜你喜欢
  • 1970-01-01
  • 2017-09-11
  • 1970-01-01
  • 1970-01-01
  • 2017-11-23
  • 2021-06-04
  • 1970-01-01
  • 2020-07-30
  • 2016-12-25
相关资源
最近更新 更多