AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / computer / 问题 / 1789705
Accepted
punkish
punkish
Asked: 2023-06-18 16:37:12 +0800 CST2023-06-18 16:37:12 +0800 CST 2023-06-18 16:37:12 +0800 CST

如何从 crontab 中删除错误的控制字符

  • 772

我编辑了我的 crontab 并奇怪地开始收到“错误:糟糕的一分钟”。环顾四周,我发现原因是错误的控制字符。我可以看到每行末尾的字符,但我不知道如何删除它。$我没有做任何特别的事情,只是用来crontab -e编辑启动的条目vi(vi就像编辑器一样)。那么,这些内容如何$出现在我的文件中,以及如何删除它们?

fwiw,我使用的是 Maczsh


更新:添加了有问题的内容crontab。见下文

所以,我发布了一个xy令人尴尬的问题。尽管如此,我的“糟糕的一分钟”问题仍然存在。这是有问题的crontab

HOME=/Users/punkish
APPDIR=Projects/zenodeo3
export NODE_ENV=cron
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
0 0 * * * cd $HOME/$APPDIR && bin/cron-truebug.sh
crontab
  • 1 1 个回答
  • 68 Views

1 个回答

  • Voted
  1. Best Answer
    user1686
    2023-06-18T16:47:59+08:002023-06-18T16:47:59+08:00

    我可以在每行末尾看到字符 $,但我不知道如何删除它。

    那应该在那里。末尾$的cat -e表示换行符(LF 字符)。“糟糕的一分钟”是由其他原因引起的。

    $人猫
    
         -e 显示非打印字符(请参阅 -v 选项),并显示
                 每行末尾都有美元符号('$')。
    

    这是有问题的 crontab

    这个 crontab 的问题与奇怪的字符无关,而与根本不遵循 crontab 语法的条目有关。crontab 不是 shell 脚本- 每个“作业”都包含一个脚本,但 crontab 作为一个整体不是,并且您不能将 shell 命令或构造放在顶层。

    也就是说,你不能将类似[ ... ]或. nvm.sh的内容放入你的 cronjob 中——你可以将其作为每个单独工作的一部分来执行,但不能全局执行。

    除了实际的作业条目之外,其中唯一允许的就是ENV=value像第 1-2 行中那样的简单分配(它们是隐式“导出”的,因此export无论如何都不需要该命令)。这看起来像脚本中的情况只是巧合。

    除了这些分配之外的任何其他内容都被假定为工作规范行,因此会出现“错误分钟”消息,因为第 3-6 行中的第一个字段(即或export)[确实不是分钟规范。

    如果你的 crontab 看起来像这样,它就会工作:

    0 0 * * * export NODE_ENV=cron NVM_DIR=$HOME/.nvm; [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"; cd ~/Projects/zenodeo3 && bin/cron-truebug.sh
    

    (我省略了 HOME= 因为 cron 作业已经知道这一点,并省略了 bash_completion 因为它只在交互式shell 中有用 - 将它作为脚本的一部分加载是没有意义的。我可能还会删除该[ -s ]检查;如果您已经设置了你可能可以假设 nvm 的存在。)

    如果这作为 cronjob 看起来太笨拙,请创建一个专用的 shell 脚本来设置所有必要的环境并将其作为作业运行:

    0 0 * * * ~/bin/cron.zenodeo-daily.sh
    

    当您在 macOS 上时,您还可以选择使用 launchd(Linux 类似地也有 systemd 计时器)。

    • 4

相关问题

  • crontab 的时间命令记录在哪里?

  • 使用 /etc/cron.deny 应该有什么效果?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何减少“vmmem”进程的消耗?

    • 11 个回答
  • Marko Smith

    从 Microsoft Stream 下载视频

    • 4 个回答
  • Marko Smith

    Google Chrome DevTools 无法解析 SourceMap:chrome-extension

    • 6 个回答
  • Marko Smith

    Windows 照片查看器因为内存不足而无法运行?

    • 5 个回答
  • Marko Smith

    支持结束后如何激活 WindowsXP?

    • 6 个回答
  • Marko Smith

    远程桌面间歇性冻结

    • 7 个回答
  • Marko Smith

    子网掩码 /32 是什么意思?

    • 6 个回答
  • Marko Smith

    鼠标指针在 Windows 中按下的箭头键上移动?

    • 1 个回答
  • Marko Smith

    VirtualBox 无法以 VERR_NEM_VM_CREATE_FAILED 启动

    • 8 个回答
  • Marko Smith

    应用程序不会出现在 MacBook 的摄像头和麦克风隐私设置中

    • 5 个回答
  • Martin Hope
    Vickel Firefox 不再允许粘贴到 WhatsApp 网页中? 2023-08-18 05:04:35 +0800 CST
  • Martin Hope
    Saaru Lindestøkke 为什么使用 Python 的 tar 库时 tar.xz 文件比 macOS tar 小 15 倍? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh 如何减少“vmmem”进程的消耗? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Windows 10 搜索未加载,显示空白窗口 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    andre_ss6 远程桌面间歇性冻结 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney 为什么在 URL 后面加一个点会删除登录信息? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension 鼠标指针在 Windows 中按下的箭头键上移动? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca 我所有的 Firefox 附加组件突然被禁用了,我该如何重新启用它们? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK 是否可以使用文本创建二维码? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 更改 git init 默认分支名称 2019-04-01 06:16:56 +0800 CST

热门标签

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve