首页 文章

如何在简单的脚本上使用cron

提问于
浏览
-1

我想使用cron定期执行脚本 . 我想先尝试一个简单的脚本,但它不起作用 .

这是我的脚本(scritp.sh),其权限为700:

#!/bin/sh
clear
echo "Hello!"
mkdir Hello

当我使用命令crontab -e编辑它时,这是crontab文件:

SHELL=/bin/sh
* * * * * /home/padro/Documents/script.sh

编辑:我在/ home / padro / Documents文件夹上有该脚本 . 之后我执行命令crontab -e来修改cron文件 . 在这个文件中我把shell想要SHELL = / bin / sh以及cron schedule表达式* * * * * /home/padro/Documents/script.sh . 这个计划每分钟都会运行脚本 . 最后我保存文件,当一分钟过去时,我看不到终端上脚本的回显 .

EDIT2:我添加了mkdir hello,因为我不知道脚本的回显是否显示在终端上 . 但是永远不会创建hello目录 .

2 回答

  • -1

    默认情况下,由cron调用的程序生成的任何输出都将通过电子邮件发送给拥有crontab的用户(假设可以本地传递邮件消息) . 所以我建议您查看本地计算机上的收件箱 .

    要将输出保存到文件中,请在crontab中使用重定向,或者安排脚本将其输出写入文件 .

    由cron启动的作业不会使用终端运行,因此您不应期望通过cron运行此脚本,每分钟都能清除终端 .

    应该在脚本使用的工作目录(可能是您的主目录)中创建 Hello 文件夹 . 要确保您知道脚本的工作目录所在,请在脚本中使用 cd 移动到正确的位置 .

  • -1

    我没有足够的声誉来添加评论 .

    我的拙见将是 . 你是通过root提到的cron文件吗?

    cos chmod 700 a file would be only be executed by owner. 如果您使用的是redhat linux,则您在首次登录时使用的用户帐户是root用户权限 .

    link引用到备忘单 .

    su - root 系统会提示root密码

    crontab -e

    *** * * * * /home/padro/Documents/script.sh**

    你甚至可以运行一个测试脚本,当我第一次学习脚本进入你的crontab时,我遇到了类似的情况 .

    *** * * * * date > export/home/padro/Documents/testing.txt**

    如果可以,请重新启动服务器 .

    使用linux / unix中的命令 pwd 检查目录是否正确 .

    我希望根据我最近的学习做出的评论对你有帮助 .

    编辑1:在脚本中删除clear . 谢谢...编辑2:我相信您的Hello文件夹是在根文件夹的核心创建的,试着找...或者用户的主目录...

相关问题