lchmod777tmpk_killtmpk_killAutokill程序解释首先,用UNIX命令psef查看进程状态,通过管道传送给awk进行处理。在第一个awk中,获取进程的用户标识(UID)、进程号(PID)、进程占用CPU时间(Time)、进程执行命令(CMD)四个字段的值。在第二个awk中,通过模式匹配,选取所有匹配模式的行。在awk中,09匹配0~9中任一个数字,19匹配1~9中任何一个数字,连用两个0909则匹配一个任意两位数,因此0909:0909:1909则匹配Time时间字段值,查找占用CPU时间超过10秒的进程;如果要查找占用CPU时间超过半小时的进程,则把模式改成0909:3909:0909。在第三个awk中,用“root”过滤掉由Root用户生成的进程,并进行Shell语言拼装,并将最终结果定向到文件tmpk_kill。在tmpk_kill文件中,都是形如kill9123的Shell命令。在Autokill程序的最后,执行tmpk_kill杀死进程。查看中间结果Autokill程序采用了管道处理方式,如要查看中间结果,则可以依次断开管道。第一步执行:psef第二步执行:psefawkpri
t1278第三步执行:psefawkpri
t1278awk090909091909pri
t1234第四步执行:psefawkpri
t1278awk090909091909pri
t1234awkrootpri
t