1.nohup命令
nohup命令的功能是以忽略挂牵和退出的方式执行制定命令.其命令格式是:
nohup command [arguments]
其中,command是所要执行的命令,arguments是指定命令的参数.
nohup命令告诉系统,command所代表的命令在执行过程中不受任何结束运行的信号(hangup和quit)的影响.例如:
$ nohup find / -name exam.txt -print>f1 &
find命令在后台运行.注销后它会继续运行:从跟目录开始,查找名字是exam.txt的文件,结果被定向到f1里.
2.at命令
at命令允许指定命令执行的时间.at命令的常用形式是:
at time command
其中,time是指定命令command在将来执行时的日期和时间.时间的指定方法有多种,也可以使用绝对时间,也可以相对 时间.该命令将以作业形式在后台运行.例如:
$ at 20:00 oct 20
回车后进入接收方式,接着键入以下命令:
mail -s "Happy Birthday!" fengbao
按D键,屏幕上将显示:
job 862960800.a at Wed Oct 20 15:00 :00 CST xxxx年
$
表明建立了一个作业,其作业ID号是862960800.a ,运行作业时间是xxxx年10月20日下午3:00,给我也就是风暴了发一 条标题为"Happy Birthday!"的空白邮件.
利用at -1可以列出当前at队列中所有的作业.
利用at -r可以删除指定的作业.这些作业以前由at或batch命令调度.例如: at -r 862960797.a将它删除掉的形 式是: at -r job_id
大家要注意噢~~~~结尾是.a的作业ID号,表示这个作业是由at命令提交的;结尾是.b的作业ID号,表示这个作业是 由batch命令提交的.
下面我们就要来谈谈batch命令了.它不带任何参数,它提交的作业优先级比at提交的优先级要低.batch无法指定作业 运行的时间.例如:
$ batch
回车后进入接收方式,接着键入命令:
find / -name exam.txt -print
按D,退出接收方式,显示:
job 862961540.b at Thu Nov 18 14:30:00 CST 2002
表示find命令被batch作为一个作业提交给系统......
4.jobs命令
此命令用来显示当前shell下正在运行哪些作业(即后台作业).例如:
$ jobs
[2] + Running sar tv3 * &
[1] - running find/ -name README -print >logfile &
&
这里的"+"表示作业的优先级比"-"的要高.
5.fg 命令
它的作用是把指定的后台作业移植到前台,其格式是:
fg [job...]
其中参数job是一个或多个进程的PID,或者是命令名称或是作业号(前面要带一个%号)
$ jobs
[2] + running tar tv3 * &
[1] - running find/ -name README -print > logfile&
$ fg %find
find/-name README -print > logfile
注意,显示的命令行末尾没有&符号.下面的命令能产生同样的效果:
$ fg %1
6. bg 命令
它是把前台进程换到后台执行,其使用格式是:
bg [job...]
其中,job还是一个或多个进程的PID,命令名称或作业号,在参数前要带%号.例如,在cc(C编译命令)命令执行过程中,按
Z键,使作业挂起.然后键入以下命令:
$ bg %cc
该挂起的作业在后台重新开始运行.........
再补充几个UNIX进程管理命令.
ps命令-主要是检查系统中当前存在的进程状态.要了解当前系统上活动的进程信息,最基本的操作是运行ps命令.
当ps命令没有选项时,只显示与控制终端相关进程的基本信息.例如,在主控制tty01上键入ps:
$ ps
PID TTY TIME CMD
595 tty01 00:00:00 sh
607 tty01 00:00:00 ps
其中PID--是进程的ID号
TTY--终端标识符
TIME--进程占用CPU的时间
CMD--与进程对应的命令
sleep命令是使进程暂停执行一段时间,其参数单位是秒.例如:
$ sleep 60
表示将等待60秒后,才重新回到$提示符状态.
wait命令的功能是等待后台进程结束.其命令格式是:
$ wait 后面跟参数
kill命令是终止一个进程的运行.如果你是个超级用户下:
$ kill 123
就是停止PID为123的进程运行.如果想强行杀死某个进程(由PID指定),可以用以下形式:
# kill -9 pid
补充: at命令要ROOT权限。 ps -ef列出所有正在进行的进程! ps -ef|grep xxx查找 进程中含有xxx的进程
[文章录入员:nancy] |