unix进程管理.docx
《unix进程管理.docx》由会员分享,可在线阅读,更多相关《unix进程管理.docx(13页珍藏版)》请在冰豆网上搜索。
![unix进程管理.docx](https://file1.bdocx.com/fileroot1/2022-11/28/bcdd5f56-2527-4b18-aa9a-e9d780a5974f/bcdd5f56-2527-4b18-aa9a-e9d780a5974f1.gif)
unix进程管理
第三章进程管理
3.1sleep
[语法]:
sleep 时间
[说明]:
挂起参数指定的秒数
3.2ps
[语法]:
ps[-efl][-t终端表] [-u 用户表][-g组表]
[说明]:
显示出有关进程的状态
-e 显示出现在正在运行的所有进程
-f 显示所有信息
-l 产生一个长列表
-t 显示指定终端进程
-u 显示指定用户进程
-g 显示指定组进程
3.3at
[语法]:
at[-f命令文件][-m][-q队列]-t 时间
[说明]:
at命令由cron管理,在未来一个指定的时间内执行一组命令,命令可以从指定文件读入,也可从键盘读入,从键盘读入时以EOF结束,(通常为CTRLD)
-f 从指定命令文件中读入命令
-m 命令执行完后给用户发邮件
-q 将命令放入指定队列
-t 指定时间 指定的时间格式为[[CC]YY]MMDDhhmm[.ss],CC表示
年的前两位,YY表示年的后两位,MM表示月,DD表示日,hh表
示时,mm表示分,ss表示秒
3.4kill
[语法]:
kill -信号 进程号
[说明]:
kill 将信号传递给指定进程,信号意义如下:
1 暂停(hangup)
2 中断(interrupt)
3 退出(quit)
4 非法指令(illeqgal instruction)
5 跟踪中断(tracetrap)
6 Abort
7 EMT指令(Emulationtrap)
8 浮点格式异常(floating point exception)
9 kill(不可忽略)
10 通道错误(buserror)
11 不合法内存段
12 错误的系统调用参数
13 写入不可读的连通管道
14 alarm clock
15 软件结束信号
16 用户定义信号一
17 用户定义信号二
[例子]:
kill -9 444 杀死进程号为444的进程
第四章系统管理和用户管理
4.1who
[语法]:
who
who am i
[说明]:
列出现在系统中的用户,whoami显示自己
4.2whodo
[语法]:
whodo [-h][-l][用户]
[说明]:
显示系统中用户及进程,若指定用户,则只列出该用户的信息
-h 不显示头部信息
-l 长列表格式输出
4.3passwd
[语法]:
passwd [用户]
[说明]:
修改密码,指定用户则修改指定用户密码
4.4logname
[语法]:
logname
[说明]:
取得当前用户注册名
4.5su
[语法]:
su [-] [用户名]
[说明]:
su命令使当前用户成为指定用户,若无指定,则成为超级用户,但必须输入该用户的密码,-选项表示用该用户的注册环境成为该用户
4.6time
[语法]:
time 命令
[说明]:
执行命令,并在执行完后显示其运行的时间
4.7date
[语法]:
date
date mmddhhmm[yy]
[说明]:
date无参数时用于显示系统时间,修改时间时参数形式为
月日时分[年]
4.8shutdown
[语法]:
shutdown [-y][-gn][-in]
[说明]:
UNIX系统必须先关闭系统,再关电源
-y对提示的所有问题都回答y
-gn 给其他用户n秒的时间退出,缺省值为60秒
-in 系统退到第n种方式,方式如下:
0 关机
1 单用户模式
2 多用户模式
3 网络下的多用户模式
6 关机并重新启动
4.9fsck
[语法]:
fsck [-y]
[说明]:
本命令用于检查和修复文件系统,当文件系统出现混乱时,可使用本命令,-y选项表示对所有提问都回答YES
第五章 通信和邮件
5.1wall
[语法]:
wall
[说明]:
向所有用户广播通知信息,常用于警告所有用户
5.2mesg
[语法]:
mesg [-n] [-y]
[说明]:
mesg 用-n参数则禁止其他用户用write发消息,用-y参数则允许接收消息,若无参数则报告现在的状况
5.3write
[语法]:
write 用户 终端
[说明]:
write 与指定的终端上的用户直接对话,直到接收到文件结束符
[例子]:
write mary console
5.4mailx
[语法]:
mailx [选项][名字]
[说明]:
本命令用于发送和接收邮件,名字是收信人的用户名,本命令有许多内部命令,选项说明如下:
-e 检查是否有邮件,若有则返回0
-f 文件名 从文件中读取邮件而非从邮箱中
-H 只显示信件标题
-s 标题 设定标题为指定标题
[命令说明]
. 当前信件
n 第n封信
^ 第一封未被处理的信
$ 最后一封信
* 所有的信
n-m第n封至第m封信
用户 由指定用户发出的信
/字符串 标题中包含字符串的信
:
c满足指定类型c的信,类型可为
d 已删除的信
n 信传送的信
o 旧信件
r 已读过的信
u 未读过的信
p 一次显示多封信
t 显示某封信的前若干行
si 显示信件字符数
h 显示信件标题
d 删除信件
u 恢复信件
s[信件表]文件名
将信件存入指定文件中
q 退出
r 回信
~e 编辑信件
~r文件 从文件中读取信件
[例子]:
mailx mary 第六章Shell编程
shell不但是Unix的用户交互界面,还是一门程序设计语言,系统注册进入时就会执行一个shell命令文件.profile,下面对shell中的常用命令作简单介绍。
$n shell程序命令行中的第n个参数,n为0-9,当n为0时表示命令名
$# 命令行中参数的个数
$$ 本shell命令的进程号
$!
最后一个后台进程的代号
$* 所有命令行参数
$@ 与$*相似,但其值不同
$HOME 注册时进入的目录
$PATH 命令的搜索目录
$PS1 系统第一个提示符,一般为$
$PS2 系统第二个提示符,一般为>;
shift[n] 将命令行参数往左移一位,但$0不变
变量名=字符串 将字符串赋予变量名,以后可用$变量名引用该变量
export 变量名表 将变量名表所列变量传递给子进程
read 变量名表 从标准输入读字符串,传给指定变量
echo 变量名表 将变量名表指定的变量显示到标准输出
set显示设置变量
env显示目前所有变量
if 条件执行,语法是:
if 条件
then 指令
fi
case 分支执行,语法是:
case 字符串变量 in
值1) 指令...
值2) 指令...
...
esac
while 条件为真时循环,语法是:
while 条件
do
指令...
done
until 条件为假时循环,语法是:
until 条件
do
指令...
done
for变量在表中时循环,语法是:
for 变量名 in 字组表
do
指令...
done
break 从循环中退出,语法:
break n
n表示跳出循环的层数
continue 继续循环,语法:
continue n
n表示退到包含continue语句的第n层继续循环
exit 退出shell
func shell内部可定义函数,语法:
func 函数名()
{
指令...
}
expr 将其后的串解释为表达式并计算其值,运算符前后需有空格
trap 捕获信号,语法 trap n,捕获信号n(信号说明参见kill)
test 条件测试,语法 test [选项] 参数
选项 -f 文件 若文件存在且可读则真
-w 文件 若文件存在且可写则真
-x 文件 若文件存在且可执行则真
-f 文件 若文件存在且为普通文件则真
-d 文件 若文件存在且为目录文件则真
-p 文件 若文件存在且为fifo文件则真
-s 文件 若文件存在且不空则真
-z 串 若串长度为0则真
-n 串 若串长度不为0则真
串 若串不是空串则真
串1=串2 若串1等于串2则真
串1!
=串2 若串1不等于串2则真
n1-eqn2 若n1与n2数值相当则真
n1-nen2 若n1与n2数值不相当则真
n1-ltn2 若n1小于n2则真
n1 -le n2 若n1小于等于n2则真
n1 -gt n2 若n1大于n2则真
n1 -ge n2 若n1大于等于n2则真
可用与-a或-o非!
将条件表达式连接起来
第七章 数学计算命令
[语法]:
bc [-c] [-l] [文件...]
[说明]:
bc是一个交互式的高精度计算工具,采用类似于C语言的语法,能够从指定文件指定文件中读出命令执行,然后再进入交互式执行,事实上,bc是dc的预编译器,它自动激活dc,将语句经预编译后传递给dc,退出bc的命令是quit,bc中的ibase,obase,scale分别表示输入基数,输出基数,小数点右边的位数。
-c bc只编译,而不将编译结果送dc,将其送到标准输出上
-l 预定义一个数学函数库,可在bc中使用以下函数
s(x)sine
c(x) cosine
e(x) exponential
l(x) log
a(x) arctangent
j(n,x) Bessel
[例子]:
bc -l 进入bc
scale=10 将小数位定为10位
e
(1) 计算e的小数点后10位
quit 退出bc