原来想写摄像头程序相关的东西的,不过还是先写crontab这个东东吧。
为啥用到了crontab这个东东呢,摄像的后端程序写好了,就是执行一下这个程序,就可以抓拍下当前的图片,而且不需要图形界面,这样最大的好处就是,把这东西架到server上,然后不管身在学校何处,只要ssh到上就可以随时拍下图片并scp回来看看。当然,这只是一个临时方法,后面把这个东西做成视频,通过web来实时监控。
在拍图片的时候,希望能够隔几分钟抓拍一次,这就用到了crontab,开始参考网上介绍,编辑/etc/crontab这个文件,添加命令如下:
*/5 * * * * root run-parts <directory> //每5分钟运行一次<directory>下的程序
或者
可以把 run-parts <directory> 换为相应的指令<command>,强烈建议<command>用绝对路径。
改完之后,重启cron服务:
/etc/rc.d/init.d/crond restart
不幸的是,根本没有任何反应,没有生成任何图片,搞了一个晚上也没搞定,身边同学也说以前用crontab都没有成功。第二天又想起这个问题,先看了一下/var/spool/mail/下的信件,crontab生成的log都会以信件发给你,发现其实程序都已经执行了,log也有,为什么没有生成图片文件呢?
站起来晃了一圈,突然顿悟,在<command>前加了一句命令,用cd进入目标文件的目录,然后执行,即:
*/5 * * * * cd <directory> && <directory>/<command> >/dev/null
然后,图像出来了,心情很舒畅。
crontab也可以用crontab -e来编辑相应用户的任务列表,添加同样的命令,然后重启服务即可,crontab -r删除所有任务,crontab -l列出所有任务。
为啥用到了crontab这个东东呢,摄像的后端程序写好了,就是执行一下这个程序,就可以抓拍下当前的图片,而且不需要图形界面,这样最大的好处就是,把这东西架到server上,然后不管身在学校何处,只要ssh到上就可以随时拍下图片并scp回来看看。当然,这只是一个临时方法,后面把这个东西做成视频,通过web来实时监控。
在拍图片的时候,希望能够隔几分钟抓拍一次,这就用到了crontab,开始参考网上介绍,编辑/etc/crontab这个文件,添加命令如下:
*/5 * * * * root run-parts <directory> //每5分钟运行一次<directory>下的程序
或者
可以把 run-parts <directory> 换为相应的指令<command>,强烈建议<command>用绝对路径。
改完之后,重启cron服务:
/etc/rc.d/init.d/crond restart
不幸的是,根本没有任何反应,没有生成任何图片,搞了一个晚上也没搞定,身边同学也说以前用crontab都没有成功。第二天又想起这个问题,先看了一下/var/spool/mail/下的信件,crontab生成的log都会以信件发给你,发现其实程序都已经执行了,log也有,为什么没有生成图片文件呢?
站起来晃了一圈,突然顿悟,在<command>前加了一句命令,用cd进入目标文件的目录,然后执行,即:
*/5 * * * * cd <directory> && <directory>/<command> >/dev/null
然后,图像出来了,心情很舒畅。
crontab也可以用crontab -e来编辑相应用户的任务列表,添加同样的命令,然后重启服务即可,crontab -r删除所有任务,crontab -l列出所有任务。