linux常用命令大全:linux常用命令

linux常用命令

称:/etc/aliases
使用权限:系统管理者
使用方式: 请用 aliases 更新资料库
介绍说明:
sendmail 会使用个在 /etc/aliases 中档案做使用者名称转换动作当 sendmail 收到个要送给 xxx 信时它会依据 aliases档内容送给另个使用者这个功能可以创造个只有在信件系统内才有效使用者例如 mailing list 就会用到这个功能在 mailinglist 中我们可能会创造个叫 [email protected] mailinglist但实际上并没有个叫 redlinux 使用者实际 aliases 档内容是将送给这个使用者信都收给 mailing list 处理程式负责分送工作

/etc/aliases 是个文字模式档案sendmail 需要个 2进位格式 /etc/aliases.dbaliases 功能传是将 /etc/aliases 转换成个 sendmail 所能了解资料库范例:
# aliases

下面命令会做相同
# sendmail -bi

相关命令:
mail, mailq, aliases, sendmail

” mail [返回]
名称:mail

使用权限:所有使用者

使用方式:mail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] user1 [user 2 ...]

介绍说明:
mail 不仅只是个指令 mail 还是个电子邮件程式不过利用 mail 来读信人应该很少吧!对于系统管理者来说 mail 就很有用管理者可以用 mail 写成 script 定期寄些备忘录提醒系统使用者

参数:
i 忽略 tty 中断讯号 (errupt)
I 强迫设成互动模式 (Interactive)
v 列印出讯息例如送信地点、状态等等 (verbose)
n 不读入 mail.rc 设定档
s 邮件标题
c cc 邮件地址
b bcc 邮件地址

范例:

将信件送给个或以上电子邮件地址由于没有加入其他选项使用者必须输入标题和信件内容等而 user2 没有主机位置就会送给邮件伺服器 user2 使用者
mail [email protected]
mail [email protected] user2

将 mail.txt 内容寄给 user2 同时 cc 给 user1 如果将这行指令设成 cronjob 就可以定时将备忘录寄给系统使用者

mail -s 标题 -c user1 user2 < mail.txt

指令:mesg
使用权限 : 所有使用者

使用方式 : mesg [y|n]

介绍说明 : 决定是否允许其他人传讯息到自己终端机介面

把计 

y : 允许讯息传到终端机介面上
n : 不允许讯息传到终端机介面上
如果没有设定则讯息传递和否则由终端机界面目前状态而定

例子 :
改变目前讯息设定改成不允许讯息传到终端机介面上 :
mesg n
和 mesg 相关指令有: talkwritewall
名称:/etc/aliases
使用权限:系统管理者
使用方式: aliases
介绍说明:
sendmail 会使用个在 /etc/aliases 中档案做使用者名称转换动作当 sendmail 收到个要送给 xxx 信时它会依据 aliases档内容送给另个使用者这个功能可以创造个只有在信件系统内才有效使用者例如 mailing list 就会用到这个功能在 mailinglist 中我们可能会创造个叫 [email protected] mailinglist但实际上并没有个叫 redlinux 使用者实际 aliases 档内容是将送给这个使用者信都收给 mailing list 处理程式负责分送工作

/etc/aliases 是个文字模式档案sendmail 需要个 2进位格式 /etc/aliases.dbaliases 功能传是将 /etc/aliases 转换成个 sendmail 所能了解资料库

参数:没有任何参数 范例:
# aliases

下面命令会做相同
# sendmail -bi

相关命令:
mail, mailq, aliases, sendmail
名称 : talk
使用权限 : 所有使用者

使用方式 :

talk person [ttyname]
介绍说明 : 和其他使用者对谈

把计 :
person : 预备对谈使用者帐号如果该使用者在其他机器上则可输入 [email protected]
ttyname : 如果使用者同时有两个以上 tty 连线可以自行选择合适 tty 传讯息

例子.1 :

和现在机器上使用者Rollaend对谈此时 Rollaend 只有个连线 :
talk Rollaend

接下来就是等Rollaend回应若Rollaend接受则Rollaend输入 `talk jzlee`即可开始对谈结束请按 ctrl+c

例子.2 :和linuxfab.cx上使用者Rollaend对谈使用pts/2来对谈 :
talk [email protected] pts/2


接下来就是等Rollaend回应若Rollaend接受则Rollaend输入 `talk [email protected]`即可开始对谈结束请按 ctrl+c

注意 : 若萤幕字会出现不正常字元试着按 ctrl+l 更新萤幕画面

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

使用方式 :
wall [ message ]
使用介绍说明:
wall 会将讯息传给每个 mesg 设定为 yes 上线使用者当使用终端机介面做为标准传入时, 讯息结束时需加上 EOF (通常用 Ctrl+D)

例子 :

传讯息"hi" 给每个使用者 :
wall hi
名称 : write
使用权限 : 所有使用者

使用方式 :

write user [ttyname]
介绍说明 : 传讯息给其他使用者

把计 :

user : 预备传讯息使用者帐号
ttyname : 如果使用者同时有两个以上 tty 连线可以自行选择合适 tty 传讯息

例子.1 :

传讯息给 Rollaend此时 Rollaend 只有个连线 :
write Rollaend

接下来就是将讯息打上去结束请按 ctrl+c

例子.2 :传讯息给 RollaendRollaend 连线有 pts/2pts/3 :
write Rollaend pts/2

接下来就是将讯息打上去结束请按 ctrl+c

注意 : 若对方设定 mesg n则此时讯席将无法传给对方

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

使用方式:

kill [ -s signal | -p ] [ -a ] pid ...
kill -l [ signal ]
介绍说明:kill 送出个特定信号 (signal) 给行程 id 为 pid 行程根据该信号而做特定动作, 若没有指定, 预设是送出终止 (TERM) 信号
把计

-s (signal) : 其中可用讯号有 HUP (1), KILL (9), TERM (15), 分别代表着重跑, 砍掉, 结束; 详细信号可以用 kill -l
-p : 印出 pid , 并不送出信号
-l (signal) : 列出所有可用信号名称
范例:

将 pid 为 323 行程砍掉 (kill) :
kill -9 323

将 pid 为 456 行程重跑 (restart) :
kill -HUP 456

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

使用方式:nice [-n adjustment] [-adjustment] [--adjustment=adjustment] [--help] [--version] [command ][arg...]]

介绍说明:以更改过优先序来执行程式, 如果未指定程式, 则会印出目前排程优先序, 内定 adjustment 为 10, 范围为 -20 (最高优先序) 到 19 (最低优先序)


把计

-n adjustment, -adjustment, --adjustment=adjustment 皆为将该原有优先序增加 adjustment
--help 显示求助讯息
--version 显示版本资讯
范例:
将 ls 优先序加 1 并执行 :
nice -n 1 ls

将 ls 优先序加 10 并执行 :
nice ls将 ls 优先序加 10 并执行

注意 : 优先序 (priority) 为作业系统用来决定 CPU 分配参数Linux 使用『回合制(round-robin)』演算法来做 CPU 排程优先序越高所可能获得 CPU时间就越多

名称:ps
使用权限:所有使用者
使用方式:ps [options] [--help]
介绍说明:显示瞬间行程 (process) 动态
参数:
ps 参数非常多, 在此仅列出几个常用参数并大略介绍含义
-A 列出所有行程
-w 显示加宽可以显示较多资讯
-au 显示较详细资讯
-aux 显示所有包含其他使用者行程

au(x) 输出格式 :

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
USER: 行程拥有者
PID: pid
%CPU: 占用 CPU 使用率
%MEM: 占用记忆体使用率
VSZ: 占用虚拟记忆体大小
RSS: 占用记忆体大小
TTY: 终端次要装置号码 (minor device number of tty)
STAT: 该行程状态:
D: 不可中断静止 (通悸□□缜b进行 I/O 动作)
R: 正在执行中
S: 静止状态
T: 暂停执行
Z: 不存在但暂时无法消除
W: 没有足够记忆体分页可分配
<: 高优先序行程
N: 低优先序行程
L: 有记忆体分页分配并锁在记忆体内 (即时系统或捱A I/O)
START: 行程开始时间
TIME: 执行时间
COMMAND:所执行指令
范例:
ps
PID TTY TIME CMD
2791 ttyp0 00:00:00 tcsh
3092 ttyp0 00:00:00 ps
% ps -A
PID TTY TIME CMD
1 ? 00:00:03 init
2 ? 00:00:00 kflushd
3 ? 00:00:00 kpiod
4 ? 00:00:00 kswapd
5 ? 00:00:00 mdrecoveryd
.......
% ps -aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.7 1096 472 ? S Sep10 0:03 init [3]
root 2 0.0 0.0 0 0 ? SW Sep10 0:00 [kflushd]
root 3 0.0 0.0 0 0 ? SW Sep10 0:00 [kpiod]
root 4 0.0 0.0 0 0 ? SW Sep10 0:00 [kswapd]
........
名称: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] [n] [b]

介绍说明:即时显示 process 动态

把计

d : 改变显示更新速度或是在交谈式指令列( eractive 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

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

名称:skill

使用权限:所有使用者

使用方式: skill [signal to send] [options] 选择规则

介绍说明:

送个讯号给正在执行,预设讯息为 TERM (中断) , 较常使用讯息为 HUP , INT , KILL , STOP , CONT ,和 0

讯息有 3种写法:分别为 -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/*

停止 3个使用者 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

Tags:  linux命令大全 linux命令 linux系统常用命令 linux常用命令大全

延伸阅读

最新评论

发表评论