0

我有 bash 脚本 test.sh,它运行一个简单的命令,如下所示

echo "test" >> /d2/tmp/test.txt

现在我调用它如下

[root@labtspc1rg03 tmp]# at now < test.sh
job 574 at 2015-12-30 05:26 

现在这项工作永远不会被执行。

[root@labtspc1rg03 tmp]# atq
574     2015-12-30 05:26 = root
573     2015-12-30 05:26 = root

我已经安排了 2 个作业,如果您注意到每个作业中有一个等号如果我理解正确,则等于意味着它当前正在运行的作业,但是看到的作业没有输出,即输出为空。我希望每个作业的输出都发送到 /var/spool/at/spool/

[root@labtspc1rg03 spool]# cat a0023e017120d2
Subject: Output from your job      574
To: root
<EMPTY> 

/etc/at.deny 或 /etc/at.allow 文件中没有设置权限。

我想知道我可以检查什么来获得这个作业没有执行的原因,而且我注意到这个作业在大约 2 小时左右后自行退出,是否有一些默认配置触发了这个?

4

1 回答 1

1

at now < test.sh立即执行test.sh,然后发送 into的输出。那么将执行.test.shatattest

要执行test.sh脚本,您可以执行以下任一操作:

echo "/path/to/your/script/test.sh" | at now

或者

at -f "/path/to/your/script/test.sh" now
于 2016-01-05T10:11:42.743 回答