【发布时间】:2013-06-24 16:52:15
【问题描述】:
如何使用 grep 从 crontab 文件中提取一行并将其存储到变量中?这不起作用:
CTMP=$(crontab -l | grep $SCRIPT)
$SCRIPT 是程序中定义的另一个变量。示例 anm.sh 这是我在 crontab 中搜索的内容,以确定我需要提取的行。
谢谢!
* 更新 *
它在做一些非常奇怪的事情。我试过这个:
CTMP=$(crontab -l | grep "anm.sh")
这是我的 crontab 的样子:
*/17 * * * * cd /home/administrator/anm-1.5.0 && ./anm.sh
但是,当我回显 CTMP 时,它随机包含一堆毫无意义的信息。它以某种方式提取当前工作目录中的目录名称。这是输出:
*/17 anm.cfg anm.sh databases logs tmp anm.cfg anm.sh databases logs tmp anm.cfg anm.sh databases logs tmp anm.cfg anm.sh databases logs tmp cd /home/administrator/anm-1.5.0 && ./anm.sh
那些目录名确实存在,但它为什么要拉那些目录名???
我需要做的就是从存储到变量 CTMP 的 crontab 文件中获取该行
谢谢
【问题讨论】:
-
你确定你列出了正确的 crontab 的内容吗?每个用户都有自己的。你的代码行对我来说似乎没问题。
-
您导出了 SCRIPT 吗?
-
更新了我上面的帖子。