Linux 系统命令及其使用详解(四)

来源:互联网 发布:淘宝代购包包是真的吗 编辑:程序博客网 时间:2024/06/08 16:43

名称:pstree 
  使用权限:所有使用者
  使用方式:
pstree [-a] [-c] [-h|-Hpid] [-l] [-n] [-p] [-u] [-G|-U] [pid|user]
pstree -V
  说明:将所有行程以树状图显示, 树状图将会以 pid (如果有指定)或是以 init这个基本行程为根 (root) ,如果有指定使用者id , 则树状图会只显示该使用者所拥有的行程
  参数:
-a 显示该行程的完整指令及参数,如果是被记忆体置换出去的行程则会加上括号
-c 如果有重覆的行程名,则分开列出 (预设值是会在前面加上*
  范例:

pstree

init-+-amd
|-apmd
|-atd
|-httpd---10*[httpd]
%pstree -p
init(1)-+-amd(447)
|-apmd(105)
|-atd(339)
%pstree -c
init-+-amd
|-apmd
|-atd
|-httpd-+-httpd
| |-httpd
| |-httpd
| |-httpd
....



名称:renice 
  使用权限:所有使用者

  使用方式:renice priority [[-p] pid ...] [[-g] pgrp ...] [[-u] user ...]

  说明:重新指定一个或多个行程(Process)的优先序(一个或多个将根据所下的参数而定)
  把计:
-p pid 重新指定行程的 idpid的行程的优先序
-g pgrp 重新指定行程群组(process group)id pgrp 的行程(一个或多个)的优先序
-u user 重新指定行程拥有者为 user的行程的优先序
  范例:
  将行程 id 987 32 的行程与行程拥有者为daemon root 的优先序号码加1:
renice +1 987 -u daemon root -p 32
  注意:每一个行程(Process)都有一个唯一的(unique) id


名称:top 
  使用权限:所有使用者
  使用方式:top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]
  说明:即时显示 process 的动态
  把计:
d:改变显示的更新速度,或是在交谈式指令列( interactive command)s
q:没有任何延迟的显示速度,如果使用者是有superuser 的权限,top 将会以最高的优先序执行
c:切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称S:累积模式,会将己完成或消失的子行程( dead child process ) CPU time 累积起来
s:安全模式,将交谈式指令取消,避免潜在的危机
i:不显示任何闲置 (idle)或无用 (zombie)的行程
n:更新的次数,完成后将会退出top
b:批次档模式,搭配"n" 参数一起使用,可以用来将top 的结果输出到档案内
  范例:
  显示更新十次后退出 ;
top -n 10

  使用者将不能利用交谈式指令来对行程下命令:
top -s

  将更新显示二次的结果输入到名称为 top.log 的档案里:
top -n 2 -b < top.log

名称:skill 
  使用权限:所有使用者
  使用方式: skill [signal to send] [options] 选择程序的规则
  说明:

  送个讯号给正在执行的程序,预设的讯息为TERM (中断) ,较常使用的讯息为 HUP , INT , KILL , STOP , CONT ,0
  讯息有三种写法:分别为 -9 , -SIGKILL , -KILL , 可以使用-l -L 已列出可使用的讯息。
  一般参数:
-f 快速模式/尚未完成
-i 互动模式/每个动作将要被确认
-v 详细输出/列出所选择程序的资讯
-w 智能警告讯息/尚未完成
-n 没有动作/显示程序代号
  参数:选择程序的规则可以是, 终端机代号,使用者名称,程序代号,命令名称。
-t 终端机代号 ( ttypty )
-u 使用者名称
-p 程序代号 ( pid )
-c 命令名称 可使用的讯号:
  以下列出已知的讯号名称,讯号代号,功能。

  名称 (代号)功能/描述
ALRM 14 离开
HUP 1 离开
INT 2 离开
KILL 9 离开/强迫关闭
PIPE 13 离开
POLL 离开
PROF 离开
TERM 15 离开
USR1 离开
USR2 离开
VTALRM 离开
STKFLT 离开/只适用于i386, m68k, armppc硬体
UNUSED 离开/只适用于i386, m68k, armppc硬体
TSTP 停止 /产生与内容相关的行为
TTIN 停止 /产生与内容相关的行为
TTOU 停止 /产生与内容相关的行为
STOP 停止 /强迫关闭
CONT 从新启动 /如果在停止状态则从新启动,否则忽略
PWR 忽略 /在某些系统中会离开
WINCH 忽略
CHLD 忽略
ABRT 6 核心
FPE 8 核心
ILL 4 核心
QUIT 3 核心
SEGV 11 核心
TRAP 5 核心
SYS 核心 /或许尚未实作
EMT 核心 /或许尚未实作
BUS 核心 /核心失败
XCPU 核心 /核心失败
XFSZ 核心 /核心失败
  范例:
  停止所有在 PTY 装置上的程序
skill -KILL -v pts/*
  停止三个使用者 user1 , user2 , user3
skill -STOP user1 user2 user3

  其他相关的命令: kill

名称:expr 
  使用权限:所有使用者
### 字串长度
shell>> expr length "this is a test"
14

### 数字商数
shell>> expr 14 % 9
5

### 从位置处抓取字串
shell>> expr substr "this is a test" 3 5
is is

### 数字串 only the first character

shell>> expr index "testforthegame" e
2

### 字串真实重现
shell>> expr quote thisisatestformela
thisisatestformela


名称: tr
### 1.比方说要把目录下所有的大写档名换为小写档名?

  似乎有很多方式,"tr"是其中一种:
#!/bin/sh
dir="/tmp/testdir";
files=`find $dir -type f`;
for i in $files
do
dir_name=`dirname $i`;
ori_filename=`basename $i`
new_filename=`echo $ori_filename | tr [:upper:] [:lower:]` > /dev/null;
#echo $new_filename;
mv $dir_name/$ori_filename $dir_name/$new_filename
done

### 2.自己试验中...lowercase to uppercase

tr abcdef...[del] ABCDE...[del]
tr a-z A-Z
tr [:lower:] [:upper:]

shell>> echo "this is a test" | tr a-z A-Z > www
shell>> cat www
THIS IS A TEST

### 3.去掉不想要的字串
shell>> tr -d this ### 去掉有关 t.e.s.t
this

man
man
test
e
### 4.取代字串
shell>> tr -s "this" "TEST"
this
TEST
th
TE

指令:clear 
  用途:清除萤幕用。
  使用方法:在 console 上输入 clear

名称: reset, tset
  使用方法: tset [-IQqrs] [-] [-e ch] [-i ch] [-k ch] [-m mapping] [terminal]
  使用说明:
reset 其实和 tset是一同个命令,它的用途是设定终端机的状态。一般而言,这个命令会自动的从环境变数,命令列或是其它的组态档决定目前终端机的型态。如果指定型态是? 的话,这个程式会要求使用者输入终端机的型别。

  由于这个程式会将终端机设回原始的状态,除了在login 时使用外,当系统终端机因为程式不正常执行而进入一些奇怪的状态时,你也可以用它来重设终端机o例如不小心把二进位档用 cat指令进到终端机,常会有终端机不再回应键盘输入,或是回应一些奇怪字元的问题。此时就可以用reset 将终端机回复至原始状态。选项说明:
-p
  将终端机类别显示在萤幕上,但不做设定的动作。这个命令可以用来取得目前终端机的类别。
-e ch
  将 erase 字元设成 ch
-i ch
  将中断字元设成 ch
-k ch
  将删除一行的字元设成 ch
-I
  不要做设定的动作,如果没有使用选项-Q 的话,erase,中断及删除字元的目前值依然会送到萤幕上。
-Q
  不要显示 erase,中断及删除字元的值到萤幕上。
-r
  将终端机类别印在萤幕上。
-s
  将设定 TERM 用的命令用字串的型式送到终端机中,通常在.login .profile 中用
  范例:
  让使用者输入一个终端机型别并将终端机设到该型别的预设状态。
# reset ?

  将 erase 字元设定 control-h
# reset -e ^B

  将设定用的字串显示在萤幕上
# reset -s
Erase is control-B (^B).
Kill is control-U (^U).
Interrupt is control-C (^C).
TERM=xterm; 

0 0
原创粉丝点击