文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Shell-Ch3.后台执行命令

Shell-Ch3.后台执行命令

时间:2005-12-19  来源:jeromeecho

一.crontab

二.at

三.&命令

四.用PS查看进程

五.nohup命令

Ch3.后台执行命令

cron 是系统主要的调度进程,可以在无需人工干预的情况下运行作业.

一.crontab

crontab的命令允许用户提交,编辑或删除相应的作业.

每个用户都可以有一个crontab文件,但在一个较大统中系统管理员一般会禁止这些文件,而只在整个系统中保留一个这样的文件.管理员通过cron.deny,cron.allow这两个文件来禁止或允许用户拥有自己的crontab文件.

crontab的域

第1列分钟1~5 9

第2列小时1~2 3(0表示子夜)

第3列日1~3 1

第4列月1~1 2

第5列星期0~6(0表示星期天)

第6列要运行的命令

分< >时< >日< >月< >星期< >要运行的命令

*表示淌有特别的时间限定,也表示连续的时间段.

,多个列举时用来分隔.

-表示一个时间范围.

格式一定要全,没有的话用*补全.

命令域一定要给出命令或者程序的绝对路径,cron不知道环境.

crontab命令格式:

crontab [-u user] -e -l -r

-u 用户名。

-e 编辑c r o n t a b文件。

-l 列出c r o n t a b文件中的内容。

-r 删除c r o n t a b文件。

如果使用自己的名字登录,就不用使用- u选项,因为在执行c r o n t a b命令时,该命令能够知道当前的用户。

编辑环境设置:

编辑$ H O M E目录下的. p r o f i l e文件,在其中加入这样一行:

EDITOR=vi; export EDITOR

创建文件 vi filename

提交:

crontab filename

提交后文件的一个副本已经被放在/var/spool/cron目录中,文件名就是用户名.

恢复丢失时,可以copy副本也可以重新提交.

二.at

向cron守护进程提交作业,使其在稍后的时间运行.比如10分钟后,也可能是几天后.如果一个月或更长的时间,用crontab比较好.

一旦一个作业被提交, a t命令将会保留所有当前的环境变量,包括路径,不象c r o n t a b,

只提供缺省的环境。该作业的所有输出都将以电子邮件的形式发送给用户,除非你对其输出

进行了重定向,绝大多数情况下是重定向到某个文件中。

和c r o n t a b一样,根用户可以通过/ e t c目录下的a t . a l l o w和a t . d e n y文件来控制哪些用户可以可用,但一般没有crontab那样严格.

 

三.&命令

at [-f script] [-m -l -r] [time] [date]

-f script 是所要提交的脚本或命令。

-l 列出当前所有等待运行的作业。a t q命令具有相同的作用。

 

-r 清除作业。为了清除某个作业,还要提供相应的作业标识( I D);有些U N I X变体只

接受a t r m作为清除命令。

-m 作业完成后给用户发邮件。

time at命令的时间格式非常灵活;可以是H、H H . H H M M、H H : M M或H : M,其中H和M

分别是小时和分钟。还可以使用a . m .或p . m .。

date 日期格式可以是月份数或日期数,而且a t命令还能够识别诸如t o d a y、t o m o r r o w这样的词

提交方式有两种:

命令行方式:一般用来提交shell脚本.使用-f选项.

命令提示符:一般用来提交若干行命令.

at后面跟上日期/时间并回车,就进入at命令提示符.然后输入要提交的命令,按CTRL-D退出就可以了.会生成一个唯一标识.

命令完成后,会将全部结果以邮件方式发送给我.

也可以用echo命令向at命令提交作业;

eg:echo find /ect -name "passwd" -print | at now +1 minute

四.用PS查看进程

格式:命令 &

把作业放到后台执行

后业执行的作业输出也会到屏幕上,这里要用到输出定向到某个文件中.

command > out.file 2>&1 &

PS

四.用PS查看进程

ps x|grep 进程号 或

ps -ef|grep

kill

格式:kill -signal [process_number]

五.nohup命令

nohup command &

挂起,退出帐号时也不结束.

默认会把该作业的所有输出都被重定向到一个名为nohup.out的文件中.除非另外指定了输出文件:

nohup command >myout.file 2 >&1

一次提交几个作业最好能够把它们写入一个shell脚本中,并用nohup命令来执行它.

写入后记得要给这个文件执行权限.

chmod 744 filename

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载