您的位置:首页 > 运维架构 > Linux

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

2017-04-19 22:02 169 查看
名称: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 重新指定行程的 id
为 pid
的行程的优先序

-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]


  说明:即时显示 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

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

  送个讯号给正在执行的程序,预设的讯息为
TERM (中断) ,
较常使用的讯息为 HUP , INT , KILL , STOP , CONT ,和
0
  讯息有三种写法:分别为
-9 , -SIGKILL , -KILL , 可以使用
-l 或
-L 已列出可使用的讯息。

  一般参数:

-f 快速模式/尚未完成

-i 互动模式/
每个动作将要被确认

-v 详细输出/
列出所选择程序的资讯

-w 智能警告讯息/
尚未完成

-n 没有动作/
显示程序代号
  参数:选择程序的规则可以是,
终端机代号,使用者名称,程序代号,命令名称。

-t 终端机代号 ( tty
或 pty )

-u 使用者名称

-p 程序代号 ( pid )

-c 命令名称 可使用的讯号:

  以下列出已知的讯号名称,讯号代号,功能。

  名称 (代号)
功能/
描述

ALRM 14 离开

HUP 1 离开

INT 2 离开

KILL 9 离开/
强迫关闭

PIPE 13 离开

POLL 离开

PROF 离开

TERM 15 离开

USR1 离开

USR2 离开

VTALRM 离开

STKFLT 离开/
只适用于i386, m68k, arm
和 ppc
硬体

UNUSED 离开/
只适用于i386, m68k, arm
和 ppc
硬体

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; 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: