gpt4 book ai didi

linux - 由 cron 运行时,Shell 脚本无法完全运行

转载 作者:行者123 更新时间:2023-12-04 19:39:23 25 4
gpt4 key购买 nike

文件 modBackup.sh 中的脚本在由 cron 启动时没有完全运行,结果是一个损坏的 tar.gz 文件,如果我手动运行,它的大小只有这个文件的一半。无论如何,它的大小比手动启动的要小很多倍,但仍然会创建一些无法正常打开的内容,存档损坏
文件 modBackup.sh:

 #!/bin/sh
find /home/share/ -mmin -720 -type f -exec tar -rvf /mnt/archives/`date +%F`-modified.tar.gz "{}" +
Т他的自动行为似乎被打断并且没有结束。
当我手动运行它时,脚本会创建一个真正的存档作为 [当前日期]-modified.tar.gz
这是 crontab -e:
00 18 * * 1-5 /home/myScripts/modBackup.sh
编辑:
除了 crond 已经启动,日志中没有任何信息
既不在邮件日志中,也不在 cron 中,也不在消息中
(我使用非常旧的 CentOS :( 但我认为这不是错误的原因)。
仅用于测试:我在脚本中添加了文件名的 %H%M 并执行了以下操作:
我手动运行它: sh /home/myScripts/modBackup.sh并设置为 crontab -e两分钟后运行相同的命令
几分钟后,出现了两个同时增长的文件,然后是cronjob创建的一个
停止生长
(two files) .
在这两种情况下,我都使用相同的 GUI 工具(存档管理器)打开。
Тhe 文件,通过手动启动脚本创建,打开 (manually started) ,但另一个,来自 cronjob 不能,即使我更改了扩展名,错误是“存档中的意外 EOF” (auto started)

最佳答案

建议在 $PATH 中包含用户的环境上下文以及应用程序工作的其他关键环境变量。:
modBackup.sh:

#!/bin/sh

source ~/.profile
find /home/share/ -mmin -720 -type f -exec tar -rvf /mnt/archives/`date +%F`-modified.tar.gz "{}" +

关于linux - 由 cron 运行时,Shell 脚本无法完全运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72277666/

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