为您找到与linux编写定时任务相关的共200个结果:
Linux操作系统定时重启Tomcat服务的方法如下:
1、编写tomcat_shutdown.sh:
#!/bin/sh
export JAVA_HOME=/home/oracle/jdk1.7.0_67/
export CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
echo “========begin stop the tomcat========”
‘/home/oracle/apache-tomcat-7.0.29/bin/shutdown.sh’
2、编写tomcat_startup.sh:
#!/bin/sh
export JAVA_HOME=/home/oracle/jdk1.7.0_67/
export CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
echo “========begin start the tomcat========”
‘/home/oracle/apache-tomcat-7.0.29/bin/startup.sh’
3、在linux系统终端中,输入命令“crontab -e”:
4、在vi操作界面,输入:
01 03 * * * /home/oracle/auto_exec/tomcat_shutdown.sh
03 03 * * * /home/oracle/auto_exec/tomcat_startup.sh
5、使用“crontab -l”命令,可以查看定时任务的设置情况。
使用“tail /var/spool/mail/xxxx”命令,可以查看定时任务执行的日志。
6、如果日志中提示:
/bin/sh^M: bad interpreter: No such file or directory
分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。
解决:(UltraEdit):File--》Conversions--》DOS-》UNIX即可。
上面就是在Linux操作系统定时重启Tomcat服务的介绍了,如果你遇到Tomcat服务器死机需要定时重启的话,这些方法就是解决你的问题,该方法适用于Linux操作系统。
浏览量:3
下载量:0
时间:
Nginx日志文件如何不定情清理,会变得越来越大,影响Nginx服务器的运行,下面读文网小编就给大家介绍下Linux中清理Nginx日志的方法,一起来了解下吧。
nginx日志文件需要手动分割,创建脚本文件clear_log.sh
文件路径/usr/local/nginx/clear_log.sh
vi clear_log.sh。输入如下内容
#!/bin/bash
cp /usr/local/nginx/logs/error.log /usr/local/nginx/error-$(date -d “yesterday” +“%Y%m%d”).log
#先复制原来的错误日志文件,请根据自己实际的日志路径填写
cat /dev/null 》 /usr/local/nginx/logs/error.log
#清空错误日志文件
cp/usr/local/nginx/logs/access.log /var/log/nginx/access/access-$(date -d “yesterday” +“%Y%m%d”).log
#先复制原来的正常访问日志
cat /dev/null 》 /usr/local/nginx/logs/access.log
#清空原来的正常访问日志
创建dellog.sh文件,路径/usr/local/nginx
vi dellog.sh
#!/bin/sh
find /usr/nginx/logs/error -mtime +7 -type f -name /*.log | xargs rm -f
find /usr/nginx/logs/access -mtime +7 -type f -name /*.log | xargs rm -f
#定期删除七天前的日志文件
启动linux下的计划任务,将刚才创建好的两个shell脚本加入此计划
crontab -e,输入如下内容
0 0 * * * /usr/nginx/clear_log.sh
#每天0点执行/usr/nginx/clear_log.sh
0 0 * * * /usr/nginx/dellog.sh
#每天0点执行 /usr/nginx/dellog.sh
保存后退出,输入命令crontab root就会看到/var/spool/cron/文件夹下看到相应的副本文件root。至此完成nginx日志按天拆分与定期清除。
逻辑详解:比如现在是3月18日0点0分,系统会自动执行clear_log.sh与dellog.sh两个shell脚本。clear_log.sh会把3月17日的日志文件分别生成为access_20140317.log与error_20140318.log,然后把原来的access.log与error.log分别清空。dellog.sh则会自动判断该文件的创建时间,如果是十五天前的就会自动清除
上面就是Linux清理Nginx日志的方法介绍了,因为Nginx日志没有自动清理的功能,一般采用切割日志的方法进行处理。
浏览量:2
下载量:0
时间:
对于初学者来说,Linux系统命令是主要学习的内容,在Linux众多命令中,有些命令可定时运行,下面读文网小编就给大家详细介绍下Linux中定时运行命令的用法,一起来了解下吧。
分钟 小时 天 月 星期 要执行的命令
前面五个参数中间用空格隔开,最后是要执行的命令。
详细的请参考下面
Crontab是一个很方便的在unix/linux系统上定时(循环)执行某个任务的程序
使用cron服务,用 service crond status 查看 cron服务状态,如果没有启动则 service crond start启动它,
cron服务是一个定时执行的服务,可以通过crontab 命令添加或者编辑需要定时执行的任务:
crontab -u //设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数
crontab -l //列出某个用户cron服务的详细内容
crontab -r //删除没个用户的cron服务
crontab -e //编辑某个用户的cron服务
比如说root查看自己的cron设置:crontab -u root -l
再例如,root想删除fred的cron设置:crontab -u fred -r
在编辑cron服务时,编辑的内容有一些格式和约定,输入:crontab -u root -e
进入vi编辑模式,编辑的内容一定要符合下面的格式:*/1 * * * * ls 》》 /tmp/ls.txt
编辑/etc/crontab文件,在末尾加上一行: 30 5 * * * root init 6 这样就将系统配置为了每天早上5点30自动重新启动。
需要将crond设置为系统启动后自动启动的服务,可以在/etc/rc.d/rc.local 中,在末尾加上
代码如下:
service crond start
如果还需要在系统启动十加载其他服务,可以继续加上其他服务的启动命令。
比如:
代码如下:
service mysqld start
浏览量:2
下载量:0
时间:
Linux系统操作中,定时删除过期文件能够释放空间内存,避免资源浪费,可使用命令实现,下面读文网小编就给大家介绍下Linux如何使用命令定时删除过期文件。
find /var/www/ -type f -mtime +30 -exec rm -f ‘{} ;’
以上命令删除30天以前的过期文件。
命令说明:
/var/www/是查找文件的路径。
-type f是指定文件类型为普通文件。
-mtime +30是指修改时间距离现在30天的文件。
-exec rm -f指执行删除匹配出来的文件并且不提示,有的系统需要带单引号,有的不需要。
将以上命令,添加到crontab中,即可实现定期删除了。
比如,每天的1点30分钟实现删除,可以这样:
代码如下:
#crontab -e
30 1 * * * find /var/www/ -type f -mtime +30 -exec rm -f ‘{} ;’
上面就是Linux使用命令定时删除过期文件的方法介绍了,在使用命令的时候,你可根据具体情况选择删除过期文件的时间,选好周期是关键。
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux操作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。
浏览量:3
下载量:0
时间:
利用Win7任务计划我们可以常见一些消息系统功能,例如自动关机功能。有时候我们就需要这个功能来帮助我们对电脑在某一个时间里进行关机。下面读文网小编就为大家介绍一下具体的设置方法吧,欢迎大家参考和学习。
⒈)首先进入Win7任务计划,关于Win7任务计划在哪上文有介绍,这里不再重复,不懂的朋友先阅读下上文,进入任务计划后,首先我们点击右侧的“创建基本任务”如下图:
⒉)然后我们在进入的创建基本任务框中填写上创建的任务名称以及创建任务作用描述等,大家尽量如实描述,这样后期提醒我们就会一看就名了了,如下图:
⒊)填写完基本任务的名称与描述后,我们点击左侧“创建基本任务”下面的“触发器'”切换到触发器设置界面,触发器里主要包含任务什么时间开始运行,如可以选择每天或者每周等等,大家根据自己需求来选择即可,如下图:
⒋)之后再点击左侧的“操作”选项,在里面选择任务计划为“显示消息”,如下图所示:
最后再在操作下面,点击“显示消息”,然后填写上消息标题与消息内容,如下图:
以上步骤填写完成之后,基本我们创建的计划消息提醒就基本完成了,最后点击左侧最下面的“完成”,再点击下面右下角的“完成”即全部创建完成了,如下图:
到这里,Win7计划任务创建消息提醒就创建了,消息会在我们设置的制定时间以弹窗的形式显示,有点类似于我们手机的备忘录提醒功能,有兴趣的朋友可以试试,不过这个功能大家使用的很少,下面再介绍一个大家比较实用的功能,利用Win7计划任务实现电脑每天定时关机。
应用二:Win7计划任务定时关机设置
方法与以上类似,下面简单介绍,首先同样是新创建任务,我们选择“创建基本任务”,如下图:
然后在左侧切换到触发器选项卡,选择触发器任务为“每日”,之后再点击左侧“触发器”下面的“每日”,然后在右侧填写上每日需要自管关机的时间,如下图:
然后再切换到“操作”选项下,选择希望执行“程序”操作,之后再点击侧“操作”下面的“启动程序”,然后在启动程序的地方写:C:WindowsSystem32shutdown.exe 这个就是关机系统自带的关机程序,也就是到指定时间执行这个关机命令,最前面的C:是指C盘系统盘,如果系统安装在D盘,请在C改成D即可。
最后以上操作完成之后,点击左侧下面的“完成”再点击右下角的“完成”即可全部完成自动关机任务设置。介绍到这里,相信大家对Win7任务计划有一定的了解吧,借助WIN7任务计划我们还可以创建各种实用小功能,大家不妨自己去想想吧。
浏览量:3
下载量:0
时间:
今天读文网小编又给大家普及下linux定时运行命令的知识,那么下面就是小编的整合内容啦~希望大家能学习到:
代码如下:
#MIN HOUR DAY MONTH DAYOFWEEK COMMAND
#每天早上6点10分
10 6 * * * date
#每两个小时
0 */2 * * * date (solaris 5.8似乎不支持此种写法)
#晚上11点到早上8点之间每两个小时,早上8点
0 23-7/2,8 * * * date
#每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点
0 11 4 * mon-wed date
#1月份日早上4点
0 4 1 jan * date
补充
在使用crontab的时候,要特别注意的是运行脚本中能够访问到的环境变量和当前测试环境中的环境变量未必一致,一个比较保险的做法是在运行的脚本程序中自行设置环境变量(export)
(1)先建一个文件crond.txt如下, 每天早上5点36分重新启动
36 5 * * * reboot
(2)上传到/opt目录
(3)运行命令
crontab /opt/crond.txt
crontab -l
让配置文件生效:如果让配置文件生效,还得重新启动cron,切记,既然每个用户下的cron配置文件修改后。也要重新启动cron服务器。
在Fedora 和Redhat中,我们应该用;
[root@localhost ~]# /etc/init.d/crond restart
如果让crond 在开机时运行,应该改变其运行级别;
[root@localhost ~]# chkconfig --levels 35 crond on
service crond status 查看 cron服务状态,如果没有启动则 service crond start启动它, cron服务是一个定时执行的服务,可以通过crontab 命令添加或者编辑需要定时执行的任务
浏览量:3
下载量:0
时间:
在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron]。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。那么使用crontab怎么定时执行任务?下面跟着读文网小编一起来了解一下吧。
cron的配置文件称为“crontab”,是“cron table”的简写。cron在3个地方查找配置文件:
1、/var/spool/cron/ 这个目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名,比如tom建的crontab任务对应的文件就是/var/spool/cron/tom。
一般一个用户最多只有一个crontab文件。
基本格式 :
*****command
分时日月周命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
crontab文件的一些例子:
30 21 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每晚的21:30重启apache。
45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每月1、10、22日的4 : 45重启apache。
10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每周六、周日的1 : 10重启apache。
0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启apache。
0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每星期六的11 : 00 pm重启apache。
* */1 * * * /usr/local/etc/rc.d/lighttpd restart
每一小时重启apache
* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
晚上11点到早上7点之间,每隔一小时重启apache
0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
每月的4号与每周一到周三的11点重启apache
0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
一月一号的4点重启apache
名称 : crontab
使用权限 : 所有使用者
使用方式 :
crontab file [-u user]-用指定的文件替代目前的crontab。
crontab-[-u user]-用标准输入替代目前的crontab.
crontab-1[user]-列出用户目前的crontab.
crontab-e[user]-编辑用户目前的crontab.
crontab-d[user]-删除用户目前的crontab.
crontab-c dir- 指定crontab的目录。
crontab文件的格式:M H D m d cmd.
M: 分钟(0-59)。
H:小时(0-23)。
D:天(1-31)。
m: 月(1-12)。
d: 一星期内的天(0~6,0为星期天)。
cmd要运行的程序,程序被送入sh执行,这个shell只有USER,HOME,SHELL这三个环境变量
说明 :
crontab 是用来让使用者在固定时间或固定间隔执行程序之用,换句话说,也就是类似使用者的时程表。-u user 是指设定指定
user 的时程表,这个前提是你必须要有其权限(比如说是 root)才能够指定他人的时程表。如果不使用 -u user 的话,就是表示设
定自己的时程表。
参数 :
crontab -e : 执行文字编辑器来设定时程表,内定的文字编辑器是 VI,如果你想用别的文字编辑器,则请先设定 VISUAL 环境变数
来指定使用那个文字编辑器(比如说 setenv VISUAL joe)
crontab -r : 删除目前的时程表
crontab -l : 列出目前的时程表
crontab file [-u user]-用指定的文件替代目前的crontab。
时程表的格式如下 :
f1 f2 f3 f4 f5 program
其中 f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日,f4 表示月份,f5 表示一个星期中的第几天。program 表示要执
行的程序。
当 f1 为 * 时表示每分钟都要执行 program,f2 为 * 时表示每小时都要执行程序,其馀类推
当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,f2 为 a-b 时表示从第 a 到第 b 小时都要执行,其馀类推
当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次,f2 为 */n 表示每 n 小时个时间间隔执行一次,其馀类推
当 f1 为 a, b, c,... 时表示第 a, b, c,... 分钟要执行,f2 为 a, b, c,... 时表示第 a, b, c...个小时要执行,其馀类推
使用者也可以将所有的设定先存放在档案 file 中,用 crontab file 的方式来设定时程表。
例子 :
#每天早上7点执行一次 /bin/ls :
0 7 * * * /bin/ls
在 12 月内, 每天的早上 6 点到 12 点中,每隔3个小时执行一次 /usr/bin/backup :
0 6-12/3 * 12 * /usr/bin/backup
周一到周五每天下午 5:00 寄一封信给 alex@domain.name :
0 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata
每月每天的午夜 0 点 20 分, 2 点 20 分, 4 点 20 分....执行 echo "haha"
20 0-23/2 * * * echo "haha"
注意 :
当程序在你所指定的时间执行后,系统会寄一封信给你,显示该程序执行的内容,若是你不希望收到这样的信,请在每一行空一格之
后加上 > /dev/null 2>&1 即可
例子2 :
#每天早上6点10分
10 6 * * * date
#每两个小时
0 */2 * * * date
#晚上11点到早上8点之间每两个小时,早上8点
0 23-7/2,8 * * * date
#每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点
0 11 4 * mon-wed date
#1月份日早上4点
0 4 1 jan * date
范例
$crontab -l 列出用户目前的crontab.
看过“ 使用crontab怎么定时执行任务 ”
浏览量:3
下载量:0
时间:
crontab命令的功能是在一定的时间间隔调度一些命令的执行。。那么使用crontab怎么定时执行任务?下面跟着读文网小编一起来了解一下吧。
cron的配置文件称为“crontab”,是“cron table”的简写。cron在3个地方查找配置文件:
1、/var/spool/cron/ 这个目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名,比如tom建的crontab任务对应的文件就是/var/spool/cron/tom。
一般一个用户最多只有一个crontab文件。
1.1 /etc/crontab 文件
在/etc目录下有一个crontab文件,这里存放有系统运行的一些调度程序。每个用户可以建立自己的调度crontab。
如:
[root@dave ~]# cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
1.2 /etc/cron.deny 和 /etc/cron.allow 文件
/etc/cron.deny 表示不能使用crontab 命令的用户
/etc/cron.allow 表示能使用crontab的用户。
如果两个文件同时存在,那么/etc/cron.allow 优先。
如果两个文件都不存在,那么只有超级用户可以安排作业。
每个用户都会生成一个自己的crontab 文件。这些文件在/var/spool/cron目录下:
如:
[root@dave ~]# cd /var/spool/cron
[root@dave cron]# ls
oracle root
我们直接查看这个文件,里面的内容和对应用户显示的crontab -l 一致。
[root@dave cron]# cat oracle
00 6 * * * /u02/scripts/del_st_archive.sh >/u02/scripts/del_st_arch.log 2>&1
[root@dave cron]# cat root
0 12 * * * /root/bin/sync-clock.sh
[root@dave cron]#
二. Crontab 使用说明
2.1 Crontab语法
usage: crontab [-u user] file
crontab [-u user] [ -e | -l | -r ]
(default operation is replace, per 1003.2)
-e (edit user's crontab)
-l (list user's crontab)
-r (delete user's crontab)
-i (prompt before deleting user's crontab)
-s (selinux context)
其中,file是命令文件的名字。如果在命令行中指定了这个文件,那么执行crontab命令,则将这个文件拷贝到crontabs目录下;如果在命令行中没有制定这个文件,crontab命令将接受标准输入(键盘)上键入的命令,并将他们也存放在crontab目录下。
帮助:
[root@dave ~]# man crontab
CRONTAB(1) CRONTAB(1)
NAME
crontab - maintain crontab files for individual users (ISC Cron V4.1)
SYNOPSIS
crontab [-u user] file
crontab [-u user] [-l | -r | -e] [-i] [-s]
DESCRIPTION
Crontab is the program used to install, deinstall or list the tables used to drive the cron(8) daemon in ISC Cron. Each user can have their own crontab, and though these are files in /var/spool/ , they are not intended to be edited directly. For SELinux in mls mode can be even more crontabs - for each range. For more see selinux(8).
If the cron.allow file exists, then you must be listed therein in order to be allowed to use this command. If the cron.allow file does not exist but the cron.deny file does exist, then you must not be listed in the cron.deny file in order to use this command. If neither of these files exists, only the super user will be allowed to use this command.
OPTIONS
-u It specifies the name of the user whose crontab is to be tweaked. If this option is not given, crontab examines "your" crontab, i.e., the crontab of the person executing the command. Note that su(8) can confuse crontab and that if you are running inside of su(8) you should always use the -u option for safety¡¯s sake. The first form of this command is used to install a new crontab from some named file or standard input if the pseudo-filename "-" is given.
-l The current crontab will be displayed on standard output.
-r The current crontab will be be removed.
-e This option is used to edit the current crontab using the editor specified by the VISUAL or EDITOR environment variables. After you exit from the edi-tor, the modified crontab will be installed automatically.
-i This option modifies the -r option to prompt the user for a ¡¯y/Y¡¯ response before actually removing the crontab.
-s It will append the current SELinux security context string as an MLS_LEVEL setting to the crontab file before editing / replacement occurs - see the documentation of MLS_LEVEL in crontab(5).
SEE ALSO
crontab(5), cron(8)
FILES
/etc/cron.allow
/etc/cron.deny
STANDARDS
The crontab command conforms to IEEE Std1003.2-1992 (¡®¡®POSIX¡¯¡¯). This new command syntax differs from previous versions of Vixie Cron, as well as from the classic
SVR3 syntax.
DIAGNOSTICS
A fairly informative usage message appears if you run it with a bad command line.
AUTHOR
Paul Vixie <vixie@isc.org>
4th Berkeley Distribution 16 Januar 2007 CRONTAB(1)
2.2 Crontab 格式说明
我们可以用crontab -e 添加要执行的命令。 命令执行的结果,无论是标准输出还是错误输出,都将以邮件形式发给用户。
添加的命令必须以如下格式:
* * * * * /command path
前五个字段可以取整数值,指定何时开始工作,第六个域是字符串,即命令字段,其中包括了crontab调度执行的命令。 各个字段之间用spaces和tabs分割。
前5个字段分别表示:
分钟:0-59
小时:1-23
日期:1-31
月份:1-12
星期:0-6(0表示周日)
还可以用一些特殊符号:
*: 表示任何时刻
,:表示分割
-:表示一个段,如第二端里: 1-5,就表示1到5点
/n : 表示每个n的单位执行一次,如第二段里,*/1, 就表示每隔1个小时执行一次命令。也可以写成1-23/1.
一些示例:
00 8,12,16 * * * /data/app/scripts/monitor/df.sh
30 2 * * * /data/app/scripts/hotbackup/hot_database_backup.sh
10 8,12,16 * * * /data/app/scripts/monitor/check_ind_unusable.sh
10 8,12,16 * * * /data/app/scripts/monitor/check_maxfilesize.sh
10 8,12,16 * * * /data/app/scripts/monitor/check_objectsize.sh
43 21 * * * 21:43 执行
15 05 * * * 05:15 执行
0 17 * * * 17:00 执行
0 17 * * 1 每周一的 17:00 执行
0,10 17 * * 0,2,3 每周日,周二,周三的 17:00和 17:10 执行
0-10 17 1 * * 毎月1日从 17:00到7:10 毎隔1分钟 执行
0 0 1,15 * 1 毎月1日和 15日和 一日的 0:00 执行
42 4 1 * * 毎月1日的 4:42分 执行
0 21 * * 1-6 周一到周六 21:00 执行
0,10,20,30,40,50 * * * *每隔10分 执行
*/10 * * * * 每隔10分 执行
* 1 * * * 从1:0到1:59 每隔1分钟 执行
0 1 * * * 1:00 执行
0 */1 * * * 毎时0分 每隔1小时 执行
0 * * * * 毎时0分 每隔1小时 执行
2 8-20/3 * * *8:02,11:02,14:02,17:02,20:02 执行
30 5 1,15 * * 1日 和 15日的 5:30 执行
2.3 & 后台执行命令
当在前台运行某个作业时,终端被该作业占据;而在后台运行作业时,它不会占据终端。可以使用&命令把作业放到后台执行。
如:
30 2 * * * /data/app/scripts/hotbackup/hot_database_backup.sh &
在后台运行作业时要当心:需要用户交互的命令不要放在后台执行,因为这样你的机器就会在那里傻等。
不过,作业在后台运行一样会将结果输出到屏幕上,干扰你的工作。如果放在后台运行的作业会产生大量的输出,最好使用下面的方法把它的输出重定向到某个文件中:
如:
command >out.file 2>&1 &
在这个例子中,2>&1表示所有的标准输出和错误输出都将被重定向到一个叫做out.file 的文件中。
2.4 2>&1 含义
先看一个例子:
0 2 * * * /u01/test.sh >/dev/null 2>&1 &
这句话的意思就是在后台执行这条命令,并将错误输出2重定向到标准输出1,然后将标准输出1全部放到/dev/null 文件,也就是清空。
在这里有有几个数字的意思:
0表示键盘输入
1表示标准输出
2表示错误输出.
我们也可以这样写:
0 2 * * * /u01/test.sh >/u01/out.file & --这里没写,默认是1
0 2 * * * /u01/test.sh 1>/u01/out.file &
0 2 * * * /u01/test.sh 2>/u01/out.file &
0 2 * * * /u01/test.sh 2>/u01/out.file 2>&1 &
将tesh.sh 命令输出重定向到out.file, 即输出内容不打印到屏幕上,而是输出到out.file文件中。
2>&1 是将错误输出重定向到标准输出。 然后将标准输入重定向到文件out.file。
&1 表示的是文件描述1,表示标准输出,如果这里少了&就成了数字1,就表示重定向到文件1。
& :后台执行
测试:
ls 2>1 : 不会报没有2文件的错误,但会输出一个空的文件1;
ls xxx 2>1: 没有xxx这个文件的错误输出到了1中;
ls xxx 2>&1: 不会生成1这个文件了,不过错误跑到标准输出了;
ls xxx >out.txt 2>&1 == ls xxx 1>out.txt 2>&1; 因为重定向符号>默认是1,这句就把错误输出和标准输出都传到out.txt 文件中。
2.5 2>&1写在后面的原因
格式:command > file 2>&1 == command 1> file 2>&1
首先是command > file将标准输出重定向到file中, 2>&1 是标准错误拷贝了标准输出,也就是同样被重定向到file中,最终结果就是标准输出和错误都被重定向到file中。
如果改成: command 2>&1 >file
2>&1 标准错误拷贝了标准输出的行为,但此时标准输出还是在终端。>file 后输出才被重定向到file,但标准错误仍然保持在终端。
看过“ 使用crontab定时任务命令详解 ”
浏览量:2
下载量:0
时间:
linux系统怎么添加计划任务执行php文件?PHP不支持多线程,有时候处理问题不是那么爽,读文网小编以php文件为例,讲解linux下的计划任务。
1.打开linux系统命令行界面。
在命令行界面中输入如下命令:which php,回车。
1.记住上一步的php路径,继续在命令行下输入:crontab -e,回车,按下“i”键进入vi编辑器的编辑模式,在当前模式下输入如下命令:
10,40,50 * * * * /usr/bin/php /opt/lampp/htdocs/wechat/xjtest-web_browser/pcntl_test.php
即:计划任务执行频率+php可执行文件路径+要执行的php文件路径。(文章最后会详细解释命令开始的执行频率)
输入完成后,按下“ESC”键并在当前命令行输入“:”,在“:”后输入“wq”,再回车,出现如下提示,证明计划任务添加成功。
Linux计划任务的执行频率:
命令开始部分的频率,由五个部分组成,分别代表分钟、小时、日、月、星期(0是星期日)。当前频率全部执行时,用“*”表示,所以才会出现这么多“*”。下面的例子,可以帮助大家理解:
下面的计划任务会一直运行
* * * * * [command]
下面的计划任务会在每个小时的0分时运行(就是每小时执行一次)
0 * * * * [command]
下面依旧是一个每小时运行一次的计划任务。不过是在每个小时的一刻钟时运行的(1:15,2:15.。。)
15 * * * * [command]
下面的计划任务每天执行一次,在2:30分
30 2 * * * [command]
下面的计划任务是在每个月2号的午夜执行(比如:2010年2月2日00:00)
0 0 2 * * [command]
下面的计划任务会在每周一的每个小时0分钟时执行一次
0 * * * 1 [command]
下面的会每小时运行3次,在0分,10分,和20分时
0,10,20 * * * * [command]
下面是用除号“/”表示每多少运行一次。本例是每5分钟运行一次
*/5 * * * * [command]
还可以用“-”表示一个范围,如下表示5到10点的每个整点运行一次
0 5-10 * * * [command]
另外还有一个特殊的时间关键字“@reboot”,就是每次重启服务器时运行计划任务
@reboot [command]
看过“linux系统怎么添加计划任务执行php文件”
浏览量:2
下载量:0
时间:
crontab命令的功能是在一定的时间间隔调度一些命令的执行。那么crontab命令怎么处理定时任务呢?下面跟着读文网小编来一起了解下吧。
定时执行操作命令,每一个用户拥有自己的crontab,配置文件存在/var下面,不能被直接编辑。
-e 设置计时器
-l 列出当前计时器的设置
-r 删除计时器的设置
-i 交互式模式,删除计时器设置时要先询问
第1列 第2列 3 4 5 6
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
crontab书写規则的例子很多,以下从网上找的,偷懒一下,嘿嘿
30 21 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每晚的21:30重启lighttpd 。
45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每月1、10、22日的4 : 45重启lighttpd 。
10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每周六、周日的1 : 10重启lighttpd 。
0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启lighttpd 。
0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每星期六的11 : 00 pm重启lighttpd 。
0 * * * * /usr/local/etc/rc.d/lighttpd restart
每一小时重启lighttpd
* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
晚上11点到早上7点之间,每隔一小时重启lighttpd
0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
每月的4号与每周一到周三的11点重启lighttpd
0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
一月一号的4点重启lighttpd
特殊符号
符号 含义
* 表示任意时间都可以
- 表示取值范围
例如:
00 17-19 * * * 表示17 18 19都执行任务, 表示分隔时间.
例如
30 17,18,19 * * * 表示17.30 18.30 19.30执行/n n代表数字,表示每隔多久执行一次
例1
代码如下:
[root@localhost ~]# crontab -l #查看定时运行的程序
59 23 * * * /bin/sh /var/www/database/bak.sh
59 3 * * * /bin/sh /var/www/database/mylinux.sh
59 5 * * 0 /sbin/reboot
代码如下:
[root@localhost ~]# crontab -e #添加,编辑
例2
设置crontab 每分钟定时执行之类的问题 ,今天我就贴了上来方便大家使用,会的同学就飘过吧
每五分钟执行 */5 * * * *
每小时执行 0 * * * *
每天执行 0 0 * * *
每周执行 0 0 * * 0
每月执行 0 0 1 * *
每年执行 0 0 1 1 *
看过“crontab命令怎么处理定时任务”
浏览量:3
下载量:0
时间:
定时执行操作命令,每一个用户拥有自己的crontab,那么大家知道怎么看crontab定时任务是否执行呢?接下来大家跟着读文网小编一起来了解一下的看crontab定时任务是否执行解决方法吧。
1、针对Linux系统的查询方法(含Redhat、SUSE)
看 /var/log/cron这个文件就可以,可以用tail -f /var/log/cron观察
配图为系统aix root用户默认的crontab
2、针对UINX系统查询方法(AIX、HP-UX)
在 /var/spool/cron/tmp文件中,有croutXXX00999的tmp文件,tail 这些文件就可以看到正在执行的任务了。
33. mail任务(Linux UNIX)在 /var/spool/mail/root 文件中,有crontab执行日志的记录,用tail -f /var/spool/mail/root 即可查看最近的crontab执行情况。
注意事项
其实最简单的方法还有将crontab的任务执行采用累加的方式输出到一个日志中
注意crontab里定时执行的脚本有足够的权限,如未正常执行,需要常看其日志
看过“怎么看crontab定时任务是否执行”
浏览量:3
下载量:0
时间:
在web开发过程中,经常需要设定一些定期执行的任务,那么linux怎么添加计划任务执行php文件呢?读文网小编分享了linux添加计划任务执行php文件的方法,希望对大家有所帮助。
1.打开linux系统命令行界面。
在命令行界面中输入如下命令:which php,回车。
1.记住上一步的php路径,继续在命令行下输入:crontab -e,回车,按下“i”键进入vi编辑器的编辑模式,在当前模式下输入如下命令:
10,40,50 * * * * /usr/bin/php /opt/lampp/htdocs/wechat/xjtest-web_browser/pcntl_test.php
即:计划任务执行频率+php可执行文件路径+要执行的php文件路径。(文章最后会详细解释命令开始的执行频率)
输入完成后,按下“ESC”键并在当前命令行输入“:”,在“:”后输入“wq”,再回车,出现如下提示,证明计划任务添加成功。
Linux计划任务的执行频率:
命令开始部分的频率,由五个部分组成,分别代表分钟、小时、日、月、星期(0是星期日)。当前频率全部执行时,用“*”表示,所以才会出现这么多“*”。下面的例子,可以帮助大家理解:
下面的计划任务会一直运行
* * * * * [command]
下面的计划任务会在每个小时的0分时运行(就是每小时执行一次)
0 * * * * [command]
下面依旧是一个每小时运行一次的计划任务。不过是在每个小时的一刻钟时运行的(1:15,2:15.。。)
15 * * * * [command]
下面的计划任务每天执行一次,在2:30分
30 2 * * * [command]
下面的计划任务是在每个月2号的午夜执行(比如:2010年2月2日00:00)
0 0 2 * * [command]
下面的计划任务会在每周一的每个小时0分钟时执行一次
0 * * * 1 [command]
下面的会每小时运行3次,在0分,10分,和20分时
0,10,20 * * * * [command]
下面是用除号“/”表示每多少运行一次。本例是每5分钟运行一次
*/5 * * * * [command]
还可以用“-”表示一个范围,如下表示5到10点的每个整点运行一次
0 5-10 * * * [command]
另外还有一个特殊的时间关键字“@reboot”,就是每次重启服务器时运行计划任务
@reboot [command]
看过“linux怎么添加计划任务执行php文件”
浏览量:4
下载量:0
时间:
“将此程序锁定到任务栏”选项,相信大家都不会陌生,因为在我们安装完某个软件后,他都会默认锁定在任务栏,以方便大家对其的使用。那么你知道win7系统回收站右键属性菜单消失了怎么办吗?下面是读文网小编整理的一些关于win7系统回收站右键属性菜单消失了的相关资料,供你参考。
1、打开桌面左下角处的开始菜单,然后在其菜单中选择“运行”。在打开的运行对话框中输入gpedit.msc命令,并执行该命令。
2、此时可以看到深度系统本地组策略编辑器被打开了,在其左边菜单的列表中依次选中“用户配置”-“管理模板”-“开始菜单和任务栏”。
3、然后在其右边对应的窗口中,找到“不允许将程序附加到任务栏”。双击打开进入编辑窗口,在其编辑对话框中将“未配置”修改为“已启用”。
win7删除将此程序锁定到任务栏选项的相关
浏览量:3
下载量:0
时间:
在windows7系统下,当用户在安装一些软件后,随着软件的卸载,在软件任务栏中就会存留着历史使用痕迹,这样一来也是的任务栏看上去显得特别的杂乱,同时还在一定基础上影响着系统运行速度,那么你知道怎么清理win7任务栏图标吗?下面是读文网小编整理的一些关于清理win7任务栏图标的相关资料,供你参考。
1、在任务栏上空白处单击右键,选择属性;
2、在“任务栏和【开始】菜单属性”窗口中,任务栏选卡下放点击“自定义”;
3、在通知区域图标窗口内,找到不需要显示的图标,然后在行为一栏内选择“隐藏图标和通知”点击确定;
4、按下“Win+R”,在框内输入“regedit”,然后点击确定;
5、在注册表中依次展开“HKEY_CLASSES_ROOTLocal SettingsSoftwareMicrosoftWindowsCurrentVersionTrayNotify”;
6、然后在窗口右侧,将“IconStreams”和“PastIconsStream”两个项都删除,然后注销计算机或者重启即可搞定。
清理win7任务栏图标的相关
浏览量:2
下载量:0
时间:
在windows系统任务栏中主要由开始菜单、应用程序区、语言栏选项和托盘区组成,任务栏的使用对我们操作有很大的帮助,如果在任务栏程序区创建太多的软件图标反而会影响到操作,那么你知道win7系统怎么调整任务栏图标提高上网速度吗?下面是读文网小编整理的一些关于win7系统调整任务栏图标提高上网速度的相关资料,供你参考。
1、看到这么多图标,“任务栏”是不是很累。
2、删除左边那些无用的图标。右键点击图标,单击“将此程序从任务栏解除”选项,这样删除工作完成了。
3、添加自己需要的程序图标。打开程序后在程序图标上面点击右键,单击“将此程序锁定到任务栏”选项。
4、整理右侧图标。找到右边图标里面有一个向上的“小三角”,直接点击“小三角”,就可以看到被隐藏的图标了。把没用的程序图标移动到这里,把有用的移动到任务栏。有些程序可能是你不想运行的,是启动自动运行的程序。但这个功能只是隐藏或显示图标,不能停止程序运行。
5、整理图标后的效果就出来了。
win7系统调整任务栏图标提高上网速度的相关
浏览量:3
下载量:0
时间:
我们使用的Windows操作系统中默认的任务栏都是在屏幕底部,而且用户也比较习惯这样的操作方式。不过由于某些原因导致任务栏跑到屏幕顶部、左侧或右侧中,这样就会给用户带来操作上的很大障碍,今天读文网小编给大家介绍下Win8任务栏如何还原到底部吧。
这种情况便是任务栏自动隐藏了,我们将鼠标往下移动,任务栏又出来了。
单击右键,在弹出框中选择“属性”。
弹出“任务栏和导航属性”对话框,在“任务栏”中的第二项,将“自动隐藏任务栏”前面的复选框取消选中状态。
浏览量:3
下载量:0
时间:
,最近很多人都升级了wi10系统,作为一个新系统很多功能都有待去发现。今天读文网小编与大家分享下Win10怎样设置定时开关机以及休眠唤醒的具体操作步骤,有需要的朋友不妨了解下。
1、首先查看电脑的休眠功能是否开启,如果没有需要先开启计算机的休眠功能(注意是“休眠”而不是“睡眠”)。比较直接的方法是,点击系统“开始”,在搜索窗口中输入“cmd.exe”,在结果中看见了“cmd.exe”,右击选择“以管理员权限运行程序”打开“cmd.exe”命令窗口,输入命令“powercfg -h on”即可开启计算机休眠功能。注:如何关闭休眠功能?—开始菜单-所有程序-附件-右键命令提示符-使用管理员权限打开—输入“powercfg -h off”回车。
2、补充重点:必须取消选择“自动重新启动”——解决休眠重启问题
步骤:首先右击开始菜单,再点击系统,打开系统属性,再打开左侧的高级系统设置那栏,点击“启动和故障恢复”的“设置”,然后取消选择“自动重新启动”选项。看下图:
3、进入windows“控制面板”,右上角选择查看方式为“小图标”,选择下面的“电源选项”。在弹出的窗口中,点击左侧“更改计算机睡眠时间”,进入新的窗口点击下面的“更改高级电源设置”,弹出点源高级设置窗口。点击节点“睡眠”,将“允许混合睡眠关闭”,将“允许使用唤醒定时器”开启。
补充说明:
睡眠模式下的“混合睡眠”——如果不断电,系统将从内存恢复;如果断电,将从硬盘恢复,所以不用担心数据会丢失。所以开启也不影响休眠唤醒功能。
“唤醒时需要密码”——根据自己需要开启——即锁屏开启不需要密码即可进入桌面。
4、下面建立定时休眠的任务计划。右击计算机,选择“管理”。弹出的窗口左侧选择“系统工具”--》“任务计划程序”--》“任务计划程序库”可以看见所有的任务计划程序。点击右侧“创建任务”弹出任务创建窗口。
5、转到触发器选项卡中,新建触发器,弹出触发器设置窗口。
6、转到操作选项卡,新建操作,程序或脚本设置为“shutdown.exe”(不含引号),参数为“-h”。
7、条件和设置选项卡。为此定时休眠任务计划已经设置好,点击确定返回“任务计划程序库”窗口,可以看见刚才创建的任务,并右击启用该任务。每次到刚才设置的时间,计算机就会自动进入休眠状态(与关机类似,计算机此时并不耗电)。
8、面建立定时唤醒任务。同样的,新建任务,常规设置。
9、发器选项卡,新建触发器,。
10、选项卡,新建操作,程序或脚本设置为“shutdown.exe”(不含引号),
11、件选项卡设置。这里是最关键的,一定要勾选上“唤醒计算机运行此任务”,否则无法实现计算机定时唤醒。
12、选项卡。至此完成唤醒定时器所有的设置,点击确定返回到“任务计划程序库”,可以看见刚才建立的唤醒任务。右键启动该任务即可。上述实现了计算机在每天晚上1:30自动睡眠,每天早上8:00自动唤醒。
补充重点:必须取消选择“自动重新启动”——解决休眠重启问题
看过“Win10怎样设置定时开关机以及休眠唤醒”
浏览量:9
下载量:0
时间: