在 Mac OS X Lion 中添加 cronjobs 时出错

在 Mac OS X Lion 中添加 cronjobs 时出错

到目前为止,我从未尝试在 Mac 上添加 crontask。令我惊讶的是,它抛出了错误。

[hayek@mac:/www/] 02:33:22 PM: crontab -e                                                                                                         1 .
crontab: no crontab for hayek - using an empty one
crontab: "/usr/bin/vi" exited with status 1

我怎样才能知道为什么会抛出这个错误?

我正在运行 Mac OS X Lion 10.7.2

答案1

在 ~/.vimrc 中添加:

    自动命令文件类型 crontab setlocal nobackup nowritebackup

答案2

问题原来vi与 cron 无关。这样做export EDITOR=vim可以解决问题

答案3

关于相关问题,如果您收到以下消息:

crontab: temp file must be edited in place

尝试:

1)添加到.bash_配置文件

alias crontab="VIM_CRONTAB=true crontab"

2)添加到.vimrc

if $VIM_CRONTAB == "true"
    set nobackup
    set nowritebackup
endif

来源:http://drawohara.com/post/6344279/crontab-temp-file-must-be-edited-in-place

答案4

我遇到了同样的问题并按照发布的建议创建了表格:

crontab file

这样就创建了 cron 表,然后我就可以运行

crontab -e

使用 vi 作为默认编辑器,没有任何问题。就好像 vi 无法保存文件,但一旦创建,它就可以访问它。这与能够运行以下内容一致:

sudo crontab -e 

出于好奇,表格存储在

/usr/lib/cron/tabs/UserName

只能读作 sudo。

相关内容