用了几个月的crt了,总结一下作为一个萌新个人在项目中最需要和经常用到的命令,最后贴上网络整理的Linux命令大全备用。
一、个人常用:
1. cd: 改变目录 
 cd /:进入根目录 
 cd :回到自己的目录(用户不同则目录也不同,root为/root,xxt为/home/xxt 
 cd ..:回到上级目录 2. pwd:显示当前所在的目录 
3. ls: 列出目录下的文件 
 -A:列出所有文件,包含隐藏文 件。 
 -l:列表形式,包含文件的绝大部分属性。 
 -R:递归显示。 
 –help:此命令的帮助。 4. su root: 切换到root用户权限,su xxxx:切换到xxxx用户权限。有密码的要输入密码。 
5. ps -ef|grep xxxx: 查看进程,常用来查看运行中的程序,是重启程序时的第一步。 
6. kill -9 进程号:停止进程,进程号是通过命令5查出来的进程对应的进程号,注意路径。(kill之后用命令5查看是否成功) 
7. nohup java -jar /路径/xxxx.jar>/路径/日志文件 2>& 1&:启动jar包(启动之后用命令5查看是否成功) 
8. ssh:远程命令。需要输入远程到的服务器的密码。 
9. scp:复制。
10. scp /路径/文件名 用户@ip:/复制到的目标路径/,这是从本机复制到远程。
11. scp 用户@ip:/路径/文件名 /复制到的目标路径/,这是从远程复制到本地。
12. scp -r:r参数,表示复制文件夹。 
二、 Linux命令整理 
 1.rz : 上传文件. 
 2.ps -auxf :查看进程 
 3.mkdir:新建目录 
 4.zip 
 解 压:unzip FileName.zip 
 压缩:zip FileName.zip DirName 
 5.tar 
 解 包:tar xvf FileName.tar 
 打包:tar cvf FileName.tar DirName 
 6.tgz 
 解 压:tar zxvf FileName.tgz 
 7.查看文件末尾命令:tail -f /var/log/messages.log 
 8.当前目录下文件数: ls | wc -l 
 9.linux定时执行文件:crontab -e 
 10.保存后要重载:/etc/rc.d/init.d/crond reload 
 11.了解当前目录:pwd 
 12.查看内存状态命令:free 
 13.查看磁盘空间使用情况:df -am 
 14.目前使用CPU,MEM的状况:ps -uxwww 
 17.修改文件编码方式:iconv -f gbk -t utf8 index.html > index1.html 
 把gbk编码的index.html文件转成index1.html 
 18.查找目录: 
 查找名字为conf的目录 
 find /目录-type d -name conf一.q 退出打开的文件。 
 二.上传文件: rz 选择要传送的文件,确定。 
 三.下载文件: sz 指定文件名,enter敲,即下载到了secureCRT/download目录下。 
 四.显示 最近输入的20条命令:history 20 
 五.获得帮助命令 –help查看命令下详细参数: 如:rz –help , sz –help 。 
 六.vi 打开当前文件七.在编辑某个文件的时候: 
 a 切换到编辑模式 
 ctrl+c 退出编辑模式 
 dd 删除整行 
 :q 退出当前文件 
 :w 写入并保存当前文件 
 -f 强行xx的参数。。。八.查看进程 
 Pstree 命令的优点在于可以立即找出某进程的父进程。您可能会需要使用 -p 选项显示每个进程的 PID,以及 -u 选项来显示启动该进程的用户名。 
 一 般来说,这一树结构比较长,您就需要这么执行 pstree –up | less 这将让您纵览整个进程树结构。九.secureCRT中乱码解决:Options->SessionOptions->Appearance->font把 default改成UTF-8,就可以显示中文字体了。
十.hostname:查hostname 
 十一.ifconfig 查询主机IP 
 curl ipinfo.io:查内网外网ip十二.移动光标类命令: 
 }:光标移至段落开头 
 {:光标移至段落结尾 
 nG: 光标移至第n行首 
 n+:光标下移n行 
 n-:光标上移n行 
 n:光标移至第n行尾H:光标移至屏幕顶行M:光标移至屏幕中间行L:光标移至屏幕最后行0:(注意是数字零)光标移至当前行首:光标移至当前行尾十三.屏幕翻滚类命令: 
 Ctrl+u:向文件首翻半屏 
 Ctrl+d:向文件尾翻半屏 
 Ctrl+f:向文件尾翻一屏 //好像是 r 
 Ctrl+b;向文件首翻一屏 十四.搜索命令: 
 /pattern:从光标开始处向文件尾搜索pattern 
 ?pattern:从光标开始处向文件首搜索pattern 
 n:在同一方向重复上一次搜索命令 
 N:在反方向上重复上一次搜索命令 
 显示行号 :set number 或 :set nu 
 去除行号 :set nonumber 或 :set nonu十五.vi相关 
 vi filename :打开或新建文件,并将光标置于第一行首 
 vi +n filename :打开文件,并将光标置于第n行首 
 vi + filename :打开文件,并将光标置于最后一行首 
 vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处 
 i {insert写输入} 
 esc: 退出insert 
 :wq! write :保存并退出vi模式 
 :q! :不保存退出vi模式 
 1)单行复制 
 在命令模式下,将光标移动到将要复制的行处,按“yy”进行复制; 
 2)多行复制 
 在命令模式下,将光标移动到将要复制的首行处,按“nyy”复制n行;其中n为1、2、3. 
 3)粘贴 
 在命令模式下,将光标移动到将要粘贴的行处,按“p”进行粘贴Vi提供了三个关于光标在全屏幕上移动并且文件本身不发生滚动的命令。它们分别是H、M和L命令。 
   (1)H命令 
   该命令将光标移至屏幕首行的行首(即左上角),也就是当前屏幕的第一行,而不是整个文件的第一行。利用此命令可以快速将光标移至屏幕顶部。若在H命令之前加上数字n,则将光标移至第n行的行首。值得一提的是,使用命令dH将会删除从光标当前所在行至所显示屏幕首行的全部内容。 
   (2)M命令 
   该命令将光标移至屏幕显示文件的中间行的行首。即如果当前屏幕已经充满,则移动到整个屏幕的中间行;如果并未充满,则移动到文本的那些行的中间行。利用此命令可以快速地将光标从屏幕的任意位置移至屏幕显示文件的中间行的行首。例如,在上面屏幕显示的情况下(不论光标在屏幕的何处),在命令模式下,输入命令M之后,光标都将移到add这一行的字母a上。同样值得一提的是,使用命令dM将会删除从光标当前所在行至屏幕显示文件的中间行的全部内容。 
   (3)L命令 
   当文件显示内容超过一屏时,该命令将光标移至屏幕上的最底行的行首;当文件显示内容不足一屏时,该命令将光标移至文件的最后一行的行首。可见,利用此命令可以快速准确地将光标移至屏幕底部或文件的最后一行。若在L命令之前加上数字n,则将光标移至从屏幕底部算起第n行的行首。同样值得一提的是,使用命令dL将会删除从光标当前行至屏幕底行的全部内容。1. 名称:cat 
   使用权限:所有使用者 
   使用方式:cat [-AbeEnstTuv] [–help] [–version] fileName 
   说明:把档案串连接后传到基本输出(萤幕或加 > fileName 到另一个档案) 
   参数: 
   -n 或 –number 由 1 开始对所有输出的行数编号 
   -b 或 –number-nonblank 和 -n 相似,只不过对于空白行不编号 
   -s 或 –squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行 
   -v 或 –show-nonprinting 
   范例: 
   cat -n textfile1 > textfile2 把 textfile1 的档案内容加上行号后输入 textfile2 这个档案里 
   cat -b textfile1 textfile2 >> textfile3 把 textfile1 和 textfile2 的档案内容加上行号(空白行不加)之后将内容附加到 textfile3 
   2. 指令名称:chmod 
   使用权限:所有使用者 
   使用方式:chmod [-cfvR] [–help] [–version] mode file… 
   说明:Linux/Unix 的档案存取权限分为三级:档案拥有者,群组,其他。利用 chmod 可以藉以控制档案如何被他人所存取。 
    
   mode:权限设定字串,格式如下:[ugoa…][[+-=][rwxX]…][,…],其中u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。 
   + 表示增加权限,- 表示取消权限,= 表示唯一设定权限。 
   r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。 
   -c:若该档案权限确实已经更改,才显示其更改动作 
   -f:若该档案权限无法被更改也不要显示错误讯息 
   -v:显示权限变更的详细资料 
   -R:对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更) 
   –help:显示辅助说明 
   –version:显示版本 
   范例 :将档案 file1.txt 设为所有人皆可读取: 
   chmod ugo+r file1.txt 
  将档案 file1.txt 设为所有人皆可读取: 
   chmod a+r file1.txt 
  将档案 file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入: 
   chmod ug+w,o-w file1.txt file2.txt 
  将 ex1.py 设定为只有该档案拥有者可以执行: 
   chmod u+x ex1.py 
  将目前目录下的所有档案与子目录皆设为任何人可读取: 
   chmod -R a+r * 
  此外chmod也可以用数字来表示权限如 chmod 777 file 
   语法为:chmod abc file 
   其中a,b,c各为一个数字,分别表示User,Group,及Other的权限。
  r=4,w=2,x=1 
   若要rwx属性则4+2+1=7; 
   若要rw-属性则4+2=6; 
   若要r-x属性则4+1=7。 
  范例: 
   chmod a=rwx file 和 chmod 777 file 效果相同 
   chmod ug=rwx,o=x file 和 chmod 771 file 效果相同 
   若用chmod 4755 filename可使此程式具有root的权限 3. 指令名称:chown 
   使用权限:root 
   使用方式:chmod [-cfhvR] [–help] [–version] user[:group] file… 
  说明:Linux/Unix 是多人多工作业系统,所有的档案皆有拥有者。利用 chown 可以将档案的拥有者加以改变。一般来说,这个指令只有是由系统管理者(root)所使用,一般使用者没有权限可以改变别人的档案拥有者,也没有权限可以自己的档案拥有者改设为别人。只有系统管理者(root)才有这样的权限。 

   user:新的档案拥有者的使用者 IDgroup:新的档案拥有者的使用者群体(group)-c:若该档案拥有者确实已经更改,才显示其更改动作-f:若该档案拥有者无法被更改也不要显示错误讯息-h:只对于连结(link)进行变更,而非该 link 真正指向的档案-v:显示拥有者变更的详细资料-R:对目前目录下的所有档案与子目录进行相同的拥有者变更(即以递回的方式逐个变更)–help:显示辅助说明–version:显示版本 
   范例: 
   将档案 file1.txt 的拥有者设为 users 群体的使用者 jessie: 
   chown jessie:users file1.txt 
  将目前目录下的所有档案与子目录的拥有者皆设为 users 群体的使用者 lamport: 
   chmod -R lamport:users * 1. 名称:cp 
   使用权限:所有使用者 
   使用方式: 
   cp [options] source dest 
   cp [options] source… directory 
   说明:将一个档案拷贝至另一档案,或将数个档案拷贝至另一目录。
  -a 尽可能将档案状态,权限等资料都照原状予以复制。 
   -r 若 source 中含有目录名,则将目录下之档案亦皆依序拷贝至目的地。 
   -f 若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制。 
   范例: 
   将档案 aaa 复制(已存在),并命名为 bbb: 
   cp aaa bbb 
  将所有的C语言程式拷贝至 Finished 子目录中: 
   cp *.c Finished 4. 名称:cut 
   使用权限:所有使用者 
   用法:cut -cnum1-num2 filename 
   说明:显示每行从开头算起 num1 到 num2 的文字。 
   范例: 
   shell>> cat example 
   test2 
   this is test1 
   shell>> cut -c0-6 example ## print 开头算起前 6 个字元 
   test2 
   this i 1. 用法:find 
   使用说明: 
   将档案系统内符合 expression 的档案列出来。你可以指要档案的名称,类别,时间,大小,权限等不同资讯的组合,只有完全相符的才会被列出来。 
   find 根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部份为 path,之后的是 expression。如果 path 是空字串则使用目前路径,如果 expression 是空字串则使用 -print 为预设 expression 
   expression 中可使用的选项有二三十个之多,在此只介绍最常用的部份。 
   -mount, -xdev:只检查和指定目录在同一个档案系统下的档案,避免列出其它档案系统中的档案 
   -amin n:在过去 n 分钟内被读取过 
   -anewer file:比档案 file 更晚被读取过的档案 
   -atime n:在过去 n 天过读取过的档案 
   -cmin n:在过去 n 分钟内被修改过 
   -cnewer file :比档案 file 更新的档案 
   -ctime n:在过去 n 天过修改过的档案 
   -empty:空的档案-gid n or -group name:gid 是 n 或是 group 名称是 name 
   -ipath p, -path p:路径名称符合 p 的档案,ipath 会忽略大小写 
   -name name, -iname name:档案名称符合 name 的档案。iname 会忽略大小写 
   -size n:档案大小 是 n 单位,b 代表 512 位元组的区块,c 表示字元数,k 表示 kilo bytes,w 是二个位元组。-type c:档案类型是 c 的档案。 
   d: 目录 
   c: 字型装置档案 
   b: 区块装置档案 
   p: 具名贮列 
   f: 一般档案 
   l: 符号连结 
   s: socket 
   -pid n:process id 是 n 的档案 
  你可以使用 ( ) 将运算式分隔,并使用下列运算。 
   exp1 -and exp2 
   ! expr 
   -not expr 
   exp1 -or exp2 
   exp1, exp2 
   范例: 
   将目前目录及其子目录下所有延伸档名是 c 的档案列出来。 
   # find . -name “*.c” 
   将目前目录其其下子目录中所有一般档案列出 
   # find . -ftype f 
   将目前目录及其子目录下所有最近 20 分钟内更新过的档案列出 
   # find . -ctime -20 5. 名称:less 
   使用权限:所有使用者 
   使用方式: 
   less [Option] filename 
   说明: 
   less 的作用与 more 十分相似,都可以用来浏览文字档案的内容,不同的是 less 允许使用者往回卷动 
   以浏览已经看过的部份,同时因为 less 并未在一开始就读入整个档案,因此在遇上大型档案的开启时,会比一般的文书编辑器(如 vi)来的快速。 1. 名称:more 
   使用权限:所有使用者 
   使用方式:more [-dlfpcsu] [-num] [+/pattern] [+linenum] [fileNames..] 
   说明:类似 cat ,不过会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,请按 h 。 
   参数:-num 一次显示的行数 
   -d 提示使用者,在画面下方显示 [Press space to continue, q to quit.] ,如果使用者按错键,则会显示 [Press h for instructions.] 而不是 哔 声 
   -l 取消遇见特殊字元 ^L(送纸字元)时会暂停的功能 
   -f 计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两行或两行以上) 
   -p 不以卷动的方式显示每一页,而是先清除萤幕后再显示内容 
   -c 跟 -p 相似,不同的是先显示内容再清除其他旧资料 
   -s 当遇到有连续两行以上的空白行,就代换为一行的空白行 
   -u 不显示下引号 (根据环境变数 TERM 指定的 terminal 而有所不同) 
   +/ 在每个档案显示前搜寻该字串(pattern),然后从该字串之后开始显示 
   +num 从第 num 行开始显示 
   fileNames 欲显示内容的档案,可为复数个数 
   范例: 
   more -s testfile 逐页显示 testfile 之档案内容,如有连续两行以上空白行则以一行空白行显示。 
   more +20 testfile 从第 20 行开始显示 testfile 之档案内容。6. 名称:mv 
   使用权限:所有使用者 
   使用方式: 
   mv [options] source dest 
   mv [options] source… directory 
   说明:将一个档案移至另一档案,或将数个档案移至另一目录。 
   参数:-i 若目的地已有同名档案,则先询问是否覆盖旧档。 
   范例: 
   将档案 aaa 更名为 bbb: 
   mv aaa bbb 
   将所有的C语言程式移至 Finished 子目录中: 
   mv -i *.c 7. 名称:rm 
   使用权限:所有使用者 
   使用方式:rm [options] name… 
   说明:删除档案及目录。 
   把计: 
   -i 删除前逐一询问确认。 
   -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。 
   -r 将目录及以下之档案亦逐一删除。 
   范例: 
   删除所有C语言程式档;删除前逐一询问确认: 
   rm -i *.c 
   将 Finished 子目录及子目录中所有档案删除: 
   rm -r Finished 
   
 11.名称:rmdir 
   使用权限:于目前目录有适当权限的所有使用者 
   使用方式: rmdir [-p] dirName 
   说明: 删除空的目录。 
   参数: -p 是当子目录被删除后使它也成为空目录的话,则顺便一并删除。 
   范例: 
   将工作目录下,名为 AAA 的子目录删除: 
   rmdir AAA 
  在工作目录下的 BBB 目录中,删除名为 Test 的子目录。若 Test 删除后,BBB 目录成为空目录,则 BBB 亦予删除。 
   rmdir -p BBB/Test 
   
 12.名称: time 
   使用权限: 所有使用者 
   使用方式: time [options] COMMAND [arguments] 
   说明: 
   time 指令的用途,在于量测特定指令执行时所需消耗的时间及系统资源等资讯。例如 CPU 时间,记忆体,输入输出等等。需要特别注意的是,部分资讯在 Linux 上显示不出来。这是因为在 Linux 上部分资源的分配函式与 time 指令所预设的方式并不相同,以致于 time 指令无法取得这些资料。 
   -o or –output=FILE 
   设定结果输出档。这个选项会将 time 的输出写入 所指定的档案中。如果档案已经存在,系统将覆写其内容。 
   -a or –append 
   配合 -o 使用,会将结果写到档案的末端,而不会覆盖掉原来的内容。 
   -f FORMAT or –format=FORMAT 
   以 FORMAT 字串设定显示方式。当这个选项没有被设定的时候,会用系统预设的格式。不过你可以用环境变数 time 来设定这个格式,如此一来就不必每次登入系统都要设定一次。 
   一般设定上,你可以用 
   \t 
   表示跳栏,或者是用 
   \n 
   表示换行。每一项资料要用 % 做为前导。如果要在字串中使用百分比符号,就用.(学过C语言的人大概会觉得很熟悉) 
   time 指令可以显示的资源有四大项,分别是: 
  Time resources 
   Memory resources 
   IO resources 
   Command info 
   详细的内容如下: 
   Time Resources 
   E 执行指令所花费的时间,格式是:[hour]:minute:second。请注意这个数字并不代表实际的 CPU 时间。 
   e 执行指令所花费的时间,单位是秒。请注意这个数字并不代表实际的 CPU 时间。 
   S 指令执行时在核心模式(kernel mode)所花费的时间,单位是秒。 
   U 指令执行时在使用者模式(user mode)所花费的时间,单位是秒。 
   P 执行指令时 CPU 的占用比例。其实这个数字就是核心模式加上使用者模式的 CPU 时间除以总时间。 
  Memory Resources 
   M 执行时所占用的实体记忆体的最大值。单位是 KB 
   t 执行时所占用的实体记忆体的平均值,单位是 KB 
   K 执行程序所占用的记忆体总量(stack+data+text)的平均大小,单位是 KB 
   D 执行程序的自有资料区(unshared data area)的平均大小,单位是 KB 
   p 执行程序的自有堆叠(unshared stack)的平均大小,单位是 KB 
   X 执行程序间共享内容(shared text)的平均值,单位是 KB 
   Z 系统记忆体页的大小,单位是 byte。对同一个系统来说这是个常数 
  IO Resources 
   F 此程序的主要记忆体页错误发生次数。所谓的主要记忆体页错误是指某一记忆体页已经置换到置换档(swap file)中,而且已经分配给其他程序。此时该页的内容必须从置换档里再读出来。 
   R 此程序的次要记忆体页错误发生次数。所谓的次要记忆体页错误是指某一记忆体页虽然已经置换到置换档中,但尚未分配给其他程序。此时该页的内容并未被破坏,不必从置换档里读出来 
   W 此程序被交换到置换档的次数 
   c 此程序被强迫中断(像是分配到的 CPU 时间耗尽)的次数 
   w 此程序自愿中断(像是在等待某一个 I/O 执行完毕,像是磁碟读取等等)的次数 
   I 此程序所输入的档案数 
   O 此程序所输出的档案数 
   r 此程序所收到的 Socket Message 
   s 此程序所送出的 Socket Message 
   k 此程序所收到的信号 ( Signal )数量 
  Command Info 
   C 执行时的参数以及指令名称 
   x 指令的结束代码 ( Exit Status ) 
  -p or –portability 
   这个选项会自动把显示格式设定成为: 
   real %e 
   user %U 
   sys %S 
   这么做的目的是为了与 POSIX 规格相容。 
   -v or –verbose 
   这个选项会把所有程式中用到的资源通通列出来,不但如一般英文语句,还有说明。对不想花时间去熟习格式设定或是刚刚开始接触这个指令的人相当有用。 
   范例: 
   利用下面的指令 
   time -v ps -aux 
  我们可以获得执行 ps -aux 的结果和所花费的系统资源。如下面所列的资料: 
   USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND 
   root 1 0.0 0.4 1096 472 ? S Apr19 0:04 init 
   root 2 0.0 0.0 0 0 ? SW Apr19 0:00 [kflushd] 
   root 3 0.0 0.0 0 0 ? SW Apr19 0:00 [kpiod] 
   …… 
   root 24269 0.0 1.0 2692 996 pts/3 R 12:16 0:00 ps -aux 
  Command being timed: “ps -aux” 
   User time (seconds): 0.05 
   System time (seconds): 0.06 
   Percent of CPU this job got: 68% 
   Elapsed (wall clock) time (h:mm:ss or m:ss): 0:00.16 
   Average shared text size (kbytes): 0 
   Average unshared data size (kbytes): 0 
   Average stack size (kbytes): 0 
   Average total size (kbytes): 0 
   Maximum resident set size (kbytes): 0 
   Average resident set size (kbytes): 0 
   Major (requiring I/O) page faults: 238 
   Minor (reclaiming a frame) page faults: 46 
   Voluntary context switches: 0 
   Involuntary context switches: 0 
   Swaps: 0 
   File system inputs: 0 
   File system outputs: 0 
   Socket messages sent: 0 
   Socket messages received: 0 
   Signals delivered: 0 
   Page size (bytes): 4096 
   Exit status: 0 8. 名称:passwd 
   使用权限:所有使用者 
   使用方式:passwd [-k] [-l] [-u [-f]] [-d] [-S] [username] 
   说明:用来更改使用者的密码 
   参数: 
   -k 
   -l 
   -u 
   -f 
   -d 关闭使用者的密码认证功能, 使用者在登入时将可以不用输入密码, 只有具备 root 权限的使用者方可使用. 
   -S 显示指定使用者的密码认证种类, 只有具备 root 权限的使用者方可使用. 
   [username] 指定帐号名称. 
    
    9. 名称: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] 
   …….. 
   10. 名称: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 16.名称: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 
 17. 名称: 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 newfilename;  mvdir_name/orifilenamedir_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    
 18. 指令: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; 
 19. 名称: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 
   ….