linux shell 编程笔记 - 后台执行命令crontab
2016-03-03 19:58
447 查看
后台执行命令,就是把shell命令放到系统后台去执行,不会在终端显示,不会影响用户在终端继续工作;就算终端关闭了命令也一样在执行。
名词解释:
1)、cron 系统调度进程;
2)、at at命令,在特定的时间运行特殊的作业;
3)、& 在后台运行一个占用时间不长的进程;
4)、Nohup 在后台运行一个命令,即使用户退出也不受影响。
1、crontab命令:
crontab命令,用于定期执行shell作业。crontab是以crontab文件的形式向cron进程提交作业的。
crontab命令是周期性执行作业。
root用户可以通过/etc目录下的cron.deny和cron.allow来禁用和启用用户拥有自己的crontab文件。
2、crontab的域说明:
第1列 分钟1~59
第2列 小时1~23(0表示子夜)
第3列 日1~31
第4列 月1~12
df50
第5列 星期0~6(0表示星期天)
第6列 要运行的命令(可以是shell命令,也可以是shell脚本文件)
3、crontab的格式:
分<>时<>日<>月<>星期<>要运行的命令
#<>表示空格
说明:
1)、如果一个时间域,用*代替,说明是任意数;
2)、如果一个时间域,要填写多个数,可以通过逗号分隔;
3)、如果一个时间域,要填写一段持续的时间,可以通过-分隔;
实例:
1)、向cron提交作业,执行shell脚本文件时,需要使用绝对目录来指定shell脚本文件;
2)、shell脚本中,使用的环境都需要在shell中定义清楚;
3)、向cron提交作业之前,要配置EDITOR环境变量,目的是让cron进程知道,使用什么编辑器来执行crontab文件。
编辑用户$HOME目录下的.profile文件( gedit ~/.profile ),添加以下内容:
EDITOR=vi; export EDITOR
4、创建新crontab文件:
1)touch cbcron
2)gedit cbcron #加入以下内容
3)提交crontab: crontab cbcron
4)列出crontab: crontab -l
6)备份crontab: crontab -l > $HOME/mycron #把crontab备份到用户根目录的mycron文件;
5、编辑crontab文件:
crontab -e #系统会用设置好的EDITOR环境变量指定的编辑器打开crontab;
6、删除crontab文件:
crontab
-r
名词解释:
1)、cron 系统调度进程;
2)、at at命令,在特定的时间运行特殊的作业;
3)、& 在后台运行一个占用时间不长的进程;
4)、Nohup 在后台运行一个命令,即使用户退出也不受影响。
1、crontab命令:
crontab命令,用于定期执行shell作业。crontab是以crontab文件的形式向cron进程提交作业的。
crontab命令是周期性执行作业。
root用户可以通过/etc目录下的cron.deny和cron.allow来禁用和启用用户拥有自己的crontab文件。
2、crontab的域说明:
第1列 分钟1~59
第2列 小时1~23(0表示子夜)
第3列 日1~31
第4列 月1~12
df50
第5列 星期0~6(0表示星期天)
第6列 要运行的命令(可以是shell命令,也可以是shell脚本文件)
3、crontab的格式:
分<>时<>日<>月<>星期<>要运行的命令
#<>表示空格
说明:
1)、如果一个时间域,用*代替,说明是任意数;
2)、如果一个时间域,要填写多个数,可以通过逗号分隔;
3)、如果一个时间域,要填写一段持续的时间,可以通过-分隔;
实例:
30 21 * * * /apps/bin/cleanup.sh #每天晚上21:30执行/apps/bin目录下的cleanup.sh这个shell脚本; 10 1 * * 6,0 /bin/find -name "core" -exec rm {} \; #每周六、周日的1:10执行find命令查找文件并删除文件; 0,30 18-23 * * * /apps/bin/dbcheck.sh #每天18:00~23:00,每30分钟执行一下shell脚本;注意事项:
1)、向cron提交作业,执行shell脚本文件时,需要使用绝对目录来指定shell脚本文件;
2)、shell脚本中,使用的环境都需要在shell中定义清楚;
3)、向cron提交作业之前,要配置EDITOR环境变量,目的是让cron进程知道,使用什么编辑器来执行crontab文件。
编辑用户$HOME目录下的.profile文件( gedit ~/.profile ),添加以下内容:
EDITOR=vi; export EDITOR
4、创建新crontab文件:
1)touch cbcron
2)gedit cbcron #加入以下内容
# echo something to file every 10 minutes between 14 and 18 5,10,15,20,25,30,35,40,45,50,55 14-18 * * * /bin/echo 'hell cb!' >> /home/cb/Documents/cbhello
3)提交crontab: crontab cbcron
4)列出crontab: crontab -l
6)备份crontab: crontab -l > $HOME/mycron #把crontab备份到用户根目录的mycron文件;
5、编辑crontab文件:
crontab -e #系统会用设置好的EDITOR环境变量指定的编辑器打开crontab;
6、删除crontab文件:
crontab
-r
相关文章推荐
- VNC 登录上去灰屏,没有shell脚本,鼠标变成X
- VNC 登录上去灰屏,没有shell脚本,鼠标变成X
- Linux shell的标准输入、输出和错误
- 利用shell批量更改文件后缀名
- printf 遇到bash重定向
- 使用deb-src包重新编译bash使之能够输出日志到rsyslog的local1
- [备忘][转]使用crontab,让linux定时执行shell脚本
- linux shell 编程笔记 - 常用的find和xargs
- 编写个shell脚本将/home/test 目录下大于10K的文件转移到/tmp目录下
- shell type使用
- 手把手教你编写一个具有基本功能的shell(已开源)
- bash的配置文件类型
- 学习笔记——shell命令(1)GREP
- 多功能mysql备份shell
- more than one device/emulator问题解决方法
- shell变量的组合变量
- git bash 出现vim的时候怎么退出
- 常用shell指令
- shell脚本参数传递和main函数参数传递方式类似
- shell string wrap