linux cron命令学习

# whereis cron
可以看到,cron是一个系统管理员命令,只有root权限才能使用。

在本人所玩的嵌入式系统中,根本就没有cron这个东西(嵌入式系统中的资源是宝贵的,
尽量不要有一些相关性不大的东西在系统中)。
之所以写这篇学习心得,也纯粹是感觉cron这个东西挺好玩的;
因为很多没有经过系统验证,所以如果有理解错误的地方也感谢大家能够指出来。

cron命令会周期性的读取配置文件并根据配置文件中的配置来执行各个程序,配置文件有:
/etc/crontab,这个是cron配置文件的总入口;
/etc/cron.hourly,这个目录中包含的是每小时需要执行一次的程序;
/etc/cron.daily,这个目录中包含的是每天需要执行一次的程序;
/etc/cron.weekly,这个目录包含的是每星期需要执行一次的程序;
/etc/cron.monthly,这个目录包含的是每个月需要执行一次的程序。

因为有了这些对应的配置文件,所以系统管理员可以根据需要进行配置。
比如你想周期性的执行ntp程序,那你可以将ntp放到/etc/cron.daily目录下,
这样ntp程序就会每天去执行一次。

# /etc/init.d/cron restart
可以用来重启crond这个程序。

需要注意的是,通常将这些例行任务分布在不同的时间点去执行,
以避免系统出现瞬间繁忙的问题。

程序的执行会产生很多的日志,而有时候不希望将这些例行程序所产生的日志信息都输出到控制台上。
这时可以利用程序的输出重定向到/dev/null中或者重定向到指定的档案中。

/dev/null是一种特殊的字符设备文件。
它就像是一个黑洞,用户可以将任何不需要的数据丢进去。
# ls -l /dev/null
crw-r--r--    1 root     root       1,   3 Oct 21  2013 /dev/null
#
# stat /dev/null
  File: "/dev/null"
  Size: 0               Blocks: 0          IO Block: 4096   character special file
Device: fe00h/65024d    Inode: 770         Links: 1     Device type: 1,3
Access: (0644/crw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2013-10-21 03:15:45.000000000
Modify: 2013-10-21 03:15:45.000000000
Change: 2013-10-21 03:15:45.000000000

#

比如使用make程序编译时,不希望将日志输出到终端上,可以使用如下的命令:
# make 2>&1 | tee log.txt > /dev/null
详细可参考:
http://blog.csdn.net/boyxulin1986/article/details/11264449

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值