大家好,今天发表一篇比较基础的文章,对于初学者来说应该算是比较简单而且实用的--通过crontab定时执行shell脚本
今天测试了一个elk系统捕获日志信息的功能,发现接口返回的数据与日志来源内容不一致,然后就通过crontab定时执行我的测试脚本(向文件中写数据),看下向指定文件中写入日志,接口能不能读取到
为了完成以上操作,我把过程分享给大家,希望能够帮助到各位老铁
1.首先看下linux系统下是否安装了crontab(一般linux系统自带),如果没有使用yum下载安装即可;
--->输入which crontab,显示安装目录说明系统以及安装
2.准备要执行的脚本文件,我们让它写数据到某个文件中;
--->我给它取名叫test.sh(英文名,哈哈~~),内容如下
--->说明:获取当前系统时间(格式:月 日 时分秒)和节点名,echo后是要写入的内容,到/var/log/messages中
3.给这个test.sh赋予可执行的权限
4.接下来打开crontab的配置文件/etc/crontab ,如下图所示
--->为了有修改文件的权限,我们通过使用sudo vi /etc/crontab 指令打开文件
--->截图中有参数说明信息和我们要定时执行的脚本路径
--->下图我写的是每小时写一次数据到指定文件中
5.编辑完保存之后,查看下crontab服务是否开启
--->如果没有开启,一定要启动该服务
--->查看状态:service crond status
6.以上工作完成后,我们看下/var/log/messages中是否自动写入了指定的内容
--->vim /var/log/messages
--->中间16:49:36的数据是当时调试接口手动执行的,可忽略~
到此完工,每隔一小时就会自动写数据到指定文件中,应用场景很多很多,我只是举个例子~
大家可以根据实际情况去编辑脚本内容就可以了,希望可以帮助到各位~,告辞了~