每次退出 crontab 时回显一些内容来控制台

每次退出 crontab 时回显一些内容来控制台

例如,要在 Debian 中编辑根 crontab,我会这样做sudo crontab -e。要退出首选文本编辑器(纳米), 我愿意CTLR+X

到目前为止一切顺利,但是如果我希望每次退出 crontab 时,文本都会回显到控制台(到“stdout”)。

目的是为了echo一个提醒消息如:

如果您还没有更改p密码,请更改password[p]为您的密码!

为了确保我在这里说得清楚 --- 我希望每次用户完成编辑 crontab 然后退出到控制台时,都会显示该消息。

在当前版本的 Bash 中是否有办法做到这一点?

答案1

您可以为$EDITOR变量分配一个脚本,该脚本首先调用编辑器,然后生成输出:

#! /bin/bash

vim "$1"
echo "foo bar baz"

并使用这个电话

EDITOR=/path/to/script.sh crontab -e

答案2

有一个 baf/ugly 方法...也许有人有更好的解决方案...用脚本替换 crontab 二进制文件并将原来的名称重命名为由脚本调用的名为 crontab.original 的东西。

#!/bin/bash
crontab.original $1 #or all arguments if you wish to
echo YOUR MESSAGE
exit 0

相关内容