linux 中的crontab使用方法

作者&投稿:爨斩 (若有异议请与网页底部的电邮联系)
linux 中的crontab使用方法~

噢,你把这个文件保存下来嘛。
然后你运行 crontab -e
然后在vi编辑器里输入
*/5 * * * * root ./temp.sh
然后保存就可以了。
crontab的具体用法我复一个文档给你。

噢,下午已有一个高手回答了,答得很简略也很实用。你可以听他的。










*************************************************************
linux 下的crontab如何写
wscdlzhom发布于 2008-2-24 | 439次阅读 字号: 大 中 小 (网友评论 0 条) 我要评论
crontab命令的功能是在一定的时间间隔调度一些命令的执行。在/etc目录下有一个crontab文件,这里存放有系统运行的一些调度程序。每个用户可以建立自己的调度crontab。

cron 的主配置文件是 /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

前四行是用来配置 cron 任务运行环境的变量。SHELL 变量的值告诉系统要使用哪个 shell 环境(在这个例子里是 bash shell);PATH 变量定义用来执行命令的路径。cron 任务的输出被邮寄给 MAILTO 变量定义的用户名。如果 MAILTO 变量被定义为空白字符串(MAILTO=""),电子邮件就不会被寄出。HOME 变量可以用来设置在执行命令或脚本时使用的主目录。

/etc/crontab 文件中的每一行都代表一项任务,它的格式是:

minute hour day month dayofweek command

minute — 分钟,从 0 到 59 之间的任何整数

hour — 小时,从 0 到 23 之间的任何整数

day — 日期,从 1 到 31 之间的任何整数(如果指定了月份,必须是该月份的有效日期)

month — 月份,从 1 到 12 之间的任何整数(或使用月份的英文简写如 jan、feb 等等)

dayofweek — 星期,从 0 到 7 之间的任何整数,这里的 0 或 7 代表星期日(或使用星期的英文简写如 sun、mon 等等)

command — 要执行的命令(命令可以是 ls /proc >> /tmp/proc 之类的命令,也可以是执行你自行编写的脚本的命令。)

在以上任何值中,星号(*)可以用来代表所有有效的值。譬如,月份值中的星号意味着在满足其它制约条件后每月都执行该命令。

整数间的短线(-)指定一个整数范围。譬如,1-4 意味着整数 1、2、3、4。

用逗号(,)隔开的一系列值指定一个列表。譬如,3, 4, 6, 8 标明这四个指定的整数。

正斜线(/)可以用来指定间隔频率。在范围后加上 / 意味着在范围内可以跳过 integer。譬如,0-59/2 可以用来在分钟字段定义每两分钟。间隔频率值还可以和星号一起使用。例如,*/3 的值可以用在月份字段中表示每三个月运行一次任务。

开头为井号(#)的行是注释,不会被处理。

如你在 /etc/crontab 文件中所见,它使用 run-parts 脚本来执行 /etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly 和 /etc/cron.monthly 目录中的脚本,这些脚本被相应地每小时、每日、每周、或每月执行。这些目录中的文件应该是 shell 脚本。

如果某 cron 任务需要根据调度来执行,而不是每小时、每日、每周、或每月地执行,它可以被添加到 /etc/cron.d 目录中。该目录中的所有文件使用和 /etc/crontab 中一样的语法。

# record the memory usage of the system every monday
# at 3:30AM in the file /tmp/meminfo 30 3 * * mon cat /proc/meminfo >> /tmp/meminfo
# run custom script the first day of every month at 4:10AM 10 4 1 * * /root/scripts/backup.sh

同时在写crontab执行的.sh脚本时要注意添加权限和路径。例如:

crontab语句:30 14 * * * /opt/apps/ems_query/bin/start.sh

相应的脚本:
source /home/tvgame/.bash_profile
cd /opt/apps/ems_query/bin/
java -Xmx64M -jar ../lib/ems_query.jar &

的语法:分 时 日 月 周 命令。
例子:00 08 * * * mkdir /home/root/newfolder
这个例子的意思是在每天的早上八点钟的时候创建一个文件夹newfolder。*是什么意思?碰上*系统就是一直执行。如果*在分的地方那就危险了,意思就是每分钟都执行一次。
如果你想每天的早上八点和晚上八点执行一个次的话。可以这样写:00 8,20 * * *。这样就是每天的早上八点和晚上八点都执行一次,其中逗号是表示多选。
同样的,如果想指定日期和星期几执行的话都是可以用逗号可以指定指定!例如:
0,5,10,15 8,20 1,10,20 1,6,12 *。这个意思大家应该能够明白!只要按:分 时 日 月 周只要的规律去看就明白了。
如何查看某个用户下面的crontab列表呢?命令如下:
crontab -l -u oracle 这个命令是查看oracle用户下面的crontab任务
crontab -l 这个命令是查看root自身的crontab任务。
如何编辑crontab呢?命令如下:
crontab -e 这个是编辑root的crontab任务。编辑的时候和vi是一样的。
crontab -e -u oracle 编辑oracle用户的crontab任务。

噢,你把这个文件保存下来嘛。
然后你运行 crontab -e
然后在vi编辑器里输入
*/5 * * * * root ./temp.sh
然后保存就可以了。
crontab的具体用法我复一个文档给你。

噢,下午已有一个高手回答了,答得很简略也很实用。你可以听他的。

*************************************************************
linux 下的crontab如何写
wscdlzhom发布于 2008-2-24 | 439次阅读
字号: 大 中 小 (网友评论 0 条) 我要评论
crontab命令的功能是在一定的时间间隔调度一些命令的执行。在/etc目录下有一个crontab文件,这里存放有系统运行的一些调度程序。每个用户可以建立自己的调度crontab。

cron 的主配置文件是 /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

前四行是用来配置 cron 任务运行环境的变量。SHELL 变量的值告诉系统要使用哪个 shell 环境(在这个例子里是 bash shell);PATH 变量定义用来执行命令的路径。cron 任务的输出被邮寄给 MAILTO 变量定义的用户名。如果 MAILTO 变量被定义为空白字符串(MAILTO=""),电子邮件就不会被寄出。HOME 变量可以用来设置在执行命令或脚本时使用的主目录。

/etc/crontab 文件中的每一行都代表一项任务,它的格式是:

minute hour day month dayofweek command

minute — 分钟,从 0 到 59 之间的任何整数

hour — 小时,从 0 到 23 之间的任何整数

day — 日期,从 1 到 31 之间的任何整数(如果指定了月份,必须是该月份的有效日期)

month — 月份,从 1 到 12 之间的任何整数(或使用月份的英文简写如 jan、feb 等等)

dayofweek — 星期,从 0 到 7 之间的任何整数,这里的 0 或 7 代表星期日(或使用星期的英文简写如 sun、mon 等等)

command — 要执行的命令(命令可以是 ls /proc >> /tmp/proc 之类的命令,也可以是执行你自行编写的脚本的命令。)

在以上任何值中,星号(*)可以用来代表所有有效的值。譬如,月份值中的星号意味着在满足其它制约条件后每月都执行该命令。

整数间的短线(-)指定一个整数范围。譬如,1-4 意味着整数 1、2、3、4。

用逗号(,)隔开的一系列值指定一个列表。譬如,3, 4, 6, 8 标明这四个指定的整数。

正斜线(/)可以用来指定间隔频率。在范围后加上 / 意味着在范围内可以跳过 integer。譬如,0-59/2 可以用来在分钟字段定义每两分钟。间隔频率值还可以和星号一起使用。例如,*/3 的值可以用在月份字段中表示每三个月运行一次任务。

开头为井号(#)的行是注释,不会被处理。

如你在 /etc/crontab 文件中所见,它使用 run-parts 脚本来执行 /etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly 和 /etc/cron.monthly 目录中的脚本,这些脚本被相应地每小时、每日、每周、或每月执行。这些目录中的文件应该是 shell 脚本。

如果某 cron 任务需要根据调度来执行,而不是每小时、每日、每周、或每月地执行,它可以被添加到 /etc/cron.d 目录中。该目录中的所有文件使用和 /etc/crontab 中一样的语法。

# record the memory usage of the system every monday
# at 3:30AM in the file /tmp/meminfo 30 3 * * mon cat /proc/meminfo >> /tmp/meminfo
# run custom script the first day of every month at 4:10AM 10 4 1 * * /root/scripts/backup.sh

同时在写crontab执行的.sh脚本时要注意添加权限和路径。例如:

crontab语句:30 14 * * * /opt/apps/ems_query/bin/start.sh

相应的脚本:
source /home/tvgame/.bash_profile
cd /opt/apps/ems_query/bin/
java -Xmx64M -jar ../lib/ems_query.jar &


普兰县17841288415: linux 中的crontab使用方法 -
玉强歧星: 噢,你把这个文件保存下来嘛. 然后你运行 crontab -e 然后在vi编辑器里输入 */5 * * * * root ./temp.sh 然后保存就可以了. crontab的具体用法我复一个文档给你.噢,下午已有一个高手回答了,答得很简略也很实用.你可以听他的.***********...

普兰县17841288415: Linux系统利用Crontab命令实现定时重启怎么做?
玉强歧星: Crontab是一个很方便的在unix/linux系统上定时(循环)执行某个任务的程序 使用cron服务,用 service crond status 查看 cron服务状态,如果没有启动则 service crond ...

普兰县17841288415: 如何使用Linux的Crontab执行PHP脚本 -
玉强歧星: Linux中crontab是实现定时执行的指令,利用这个指令我们就可以定时执行某一个php文件,从而实现用PHP做Linux自动执行脚本.如何用PHP作Linux自动执行脚本?在安装PHP的时候,会产生一个可执行文件,文件名为php.将它 copy 到 /...

普兰县17841288415: linux 怎么定crontab -
玉强歧星: 1.作用 使用crontab命令可以修改crontab配置文件,然后该配置由cron公用程序在适当的时间执行,该命令使用权限是所有用户.2.格式 crontab [-u user] {-l | -r | -e}3.主要参数-e:执行文字编辑器来设定时程表,内空的文字编辑器是vi-r:删除目前...

普兰县17841288415: 问个 关于Linux crontab 命令的用法! -
玉强歧星: 00 08 * * * chmod -R 777 /mnt 你的格式不对,每个时间点之间是有空格的,时间顺序是:分时日月周

普兰县17841288415: linux定时任务crontab怎么启动 -
玉强歧星: crontab 需要由root用户部署,“su - " 切换到root; ”crontab -e" 进入crontab 编辑状态; 输入" * * * * * /usr/bin/bash /home/ganlin/ganlin.sh", 这代表每秒执行一次脚本. 部署完成后 输入 ”crontab -l" 查看crontab 中所有部署的内容; 脚本最好不要放在/home目录下,可以在脚本中写入一行标准输出用来在部署完成后测试结果用. “> /dev/null 2>&1“ 这样写得结果是就看不到标准输出了, /dev/null 代表一个虚拟的设备 把标准输出写到一个不存在的设备中去了.

普兰县17841288415: 如何用linux中的crontab 执行多条定任务命令 -
玉强歧星: 这个使用crontab -e进行编辑就可以了 每条命令占用一行 然后对每条命令定义它的执行时间

普兰县17841288415: Linux下怎么来利用crontab实现计划任务 -
玉强歧星: crontab设置完毕不会立即执行里面的任务 你想下,如果立即执行 我的服务器crontab有N条 改一次就执行一次全部 机器会奔溃的

普兰县17841288415: linux crontab的使用 -
玉强歧星: testsh1.sh是个脚本文件, crontab要求第六段是命令段,你说你用sh去执行这个脚本的能打印出效果,那你为什么不用sh命令去执行这个脚本呢 1 * * * * sh /bin/bash /var/spool/cron/testjava/testsh1.sh

普兰县17841288415: Linux系统:使用crontab命令编辑超级用户的crontab表 -
玉强歧星: 在root用户下打开终端,输入以下命令就ok了#crontab -e */30 * * * * ls -al /root#crontab -e 35 5 */10 * * ps -aux#crontab -e 25 1-4 * * * pwd#crontab -e * 18 1 * * shutdown -r now

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网