gpt4 book ai didi

linux - Crontab 不运行 bash/sh 脚本的某些部分

转载 作者:太空宇宙 更新时间:2023-11-04 05:27:45 25 4
gpt4 key购买 nike

基本上,每组都表示“如果此虚拟机存在并且用户‘admin’正在运行脚本,则执行这些脚本集”。当我手动运行脚本时,没有任何问题。当通过crontab执行时,并不会一路完成。当我注释掉这个特定部分时,crontab 将按其应有的方式执行。

如果我以 sh 或 bash 方式手动运行脚本,它就会正常运行。

if ( [ "$HNAME" = "VM61" ] && [ "$UNAME" = "admin" ] ) || ([ "$HNAME"= "VM62" ] && [ "$UNAME" = "admin" ] )  || ( [ "$HNAME" = "VM7" ] && [ "$UNAME" = "admin" ] ) ;

我相信这是因为有限的 bash 无法识别我将每一对分组在一起的方式。有人可以帮助我如何对其进行分组,以便 bash 仍然可以识别该函数吗?

最佳答案

我能够让 cron 成功运行。我遇到的问题在于实际的 crontab 本身。

我将我的设置为:

45 23 * * 0-6 ~/crons/clearLogs.sh >> ~/crons/logs/clearLogs.log

我附加到末尾以输出到日志文件(以显示已删除的文件)的内容无法正常工作。当我从 crontab 中删除这一行时,脚本工作得很好。

我不确定为什么会发生这种情况,因为我得到了与脚本的一部分完全相同的输出,但这是另一个问题。

关于linux - Crontab 不运行 bash/sh 脚本的某些部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28750650/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com