linux - 从现在开始 5 秒后运行命令 `at `

标签 linux bash scheduled-tasks

作为稍微复杂的脚本的一部分,我需要告诉服务器运行模拟。通常,我会通过 ssh user@server 'simulation/script' 来实现。但是,这样做会使 ssh session 保持事件状态,直到 'simulation/script' 完成,这对我来说是不可取的。

我最近学习了at 命令,它似乎很适合我的问题。
我现在想做的是通过 ssh 连接到我的服务器,然后在 at 我的模拟脚本中运行 5 秒(足够关闭 ssh 连接的时间)。因此,一旦 ssh 连接在 5 秒内关闭,服务器将开始模拟而不需要 ssh 连接保持事件状态。

我遇到的麻烦是 at 需要时间表达式来安排“从现在起 5 秒”的工作

我尝试了以下时间表达式,所有这些都给我错误:

now + 5 seconds
now + 5 sec
now + 5 s
now + 5seconds
now + 5sec
now + 5 s
now+5sec
now+5seconds
now+5s

如何让我的 at 运行我的命令“5 秒后”?

最佳答案

“at”没有亚分钟分辨率,但你可以伪造它:

echo "sleep 5 ; COMMAND" | at now

关于linux - 从现在开始 5 秒后运行命令 `at `,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13905886/

相关文章:

linux - SIGSEGV 的原因

bash - curl 302 重定向不工作(命令行)

android - 我想在android中的不同日期(星期一,星期二等)的特定时间安排任务

database - 如何使用数据库服务器进行分布式作业调度?

bash - 如何在 shell 脚本中创建一个以 (-) 连字符作为其中字符之一的变量

java - Spring调度线程未访问数据库

node.js - 无法从终端 ubuntu 18.04 LTS 正确安装 Mongodb

linux - 获取由 stdin write 打印的 bash 自动补全

linux - 使用 mmap 复制文件

BASH:在文件中搜索几个关键字并突出显示它们