gpt4 book ai didi

linux - 在 UNIX 中运行脚本的 Crontab

转载 作者:IT王子 更新时间:2023-10-29 00:44:31 24 4
gpt4 key购买 nike

有一个简单的脚本来运行顶级命令并将结果存储在 txt 文件中。它将每天循环运行 3 次,间隔为 1 小时。完成后,将使用文本文件内容作为电子邮件正文发送电子邮件并删除文本文件,以便第二天创建新的文本文件。

问题

<醇>
  • 为了使该过程自动化,我创建了在晚上 8 点 30 分开始的 cronjob,这将启动脚本,我的脚本将继续运行 4 小时,命令的结果将附加在文本文件中,最后通过邮件发送。 CRON 是 >> 0 10 * * */tmp/ssh-abc/KKK/Report.sh

    /tmp/ssh-abc/KKK/Report.sh: line 34: ReportProd.txt: Permission denied

  • 代码

    用于生成txt文件

    {
    //Some Logic
    } >> ReportProd.txt //Running script manually works great and generate txt!!

    邮寄后删除文件。

    find /tmp/ssh-abc/KKK/*.txt -type f -delete   //This works fine manually,file is getting generated and deleted also.

    /tmp/ssh-abc/KKK/Report.sh: line 39: ReportProd.txt: No such file or directory

    你能帮我看看这可能是什么问题吗?我已经看过一些东西但没有击中正确的点。 给予文件夹 0755 的所有权限,期望 cron 可以毫无问题地执行。尝试提供 cd 和路径,然后在 crontab 中输入命令,但似乎不起作用

    • 是否可以像只有 crontab 那样授予权限访问代码和所有者,没有其他人。

    注意:未添加#!/bin/bash 和“whereis sh”给我 sh:/bin/sh/usr/share/man/man1/sh.1.gz/usr/分享/man/man1p/sh.1p.gz

    最佳答案

    在您的脚本中,确保您cd 到要在其中创建输出文件ReportProd.txt 的目录。脚本将尝试在其中创建它当前目录,当 cron 运行它时,它将具有不同的值。
    简单地使用 /tmp/ssh-abc/KKK/Report.sh 运行脚本并不意味着工作目录将是 /tmp/ssh-abc/KKK

    或者,提供您希望输出文件转到的完整路径。例如:

    {
    # Output generated here
    } >> /full/path/to/output/ReportProd.txt

    关于linux - 在 UNIX 中运行脚本的 Crontab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29802218/

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