> ~/Desktop/date.log 这就是我的crontab -l好像: * *-6ren">
gpt4 book ai didi

linux - 运行 shell 脚本以在日志中附加日期的基本 Cron 作业,不起作用

转载 作者:行者123 更新时间:2023-12-03 10:01:13 29 4
gpt4 key购买 nike

我有一个 addlog.sh 具有以下内容的文件:

echo "time right now:" `date` >> ~/Desktop/date.log

这就是我的 crontab -l好像:
* * * * * /bin/sh /Users/naman/Desktop/addlog.sh

我已将正确的权限添加到 addlog.sh文件,我的 shell 位于 /bin/sh .
我已验证 addlog.sh 的手动运行正在将时间附加到 date.log文件。

我在本地 Mac 上运行它。但它不起作用,不确定我在这里可能会错过什么。

最佳答案

我怀疑您正在运行具有限制性系统完整性保护的 Catalina (10.15)。有两种可能的解决方案。

解决方案 1

将您的脚本和日志文件移出 ~/Desktop进入 ~/ .与 ~/Desktop 相比, ~/Documents ,并且可能其他文件夹,主目录不受系统完整性保护。

解决方案 2

如果您需要将脚本和日志文件保存在 ~/Desktop 下:

  • 添加 #!/bin/sh shebang(第一行)到您的addlog.sh脚本
  • 做个小事addlog.app来自您的addlog.sh脚本如下:
  • mkdir -p ~/Desktop/addlog.app/Resources/MacOS/
    cp ~/Desktop/addlog.sh ~/Desktop/addlog.app/Resources/MacOS/addlog
    chmod +x ~/Desktop/addlog.app/Resources/MacOS/addlog
  • 更改您的 crontab到以下:
  • * * * * * /Users/naman/Desktop/addlog.app/Resources/MacOS/addlog

    您还必须允许新创建的应用程序访问 SIP 保护区域中的文件,如下所示:
  • 打开“系统偏好设置”、“安全和隐私”
  • 单击挂锁并进行身份验证以进行更改。
  • 在左侧 Pane 中选择“全盘访问”。
  • 在右侧单击 + .
  • 导航到桌面并选择您的新应用程序 addlog .它将被添加到应用程序列表中。确保选中复选标记。
  • 关闭“系统偏好设置”
  • 关于linux - 运行 shell 脚本以在日志中附加日期的基本 Cron 作业,不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61149184/

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