名称:cut 使用权限:所有使用者 用法:cut -cnum1-num2 filename 说明:显示每行从开头算起 num1 到 num2 的文字。 范例: shell>> cat example test2 this is test1 shell>> cut -c0-6 example ## print 开头算起前 6 个字元 test2 this i
用法: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 的档案
名称:less 使用权限:所有使用者 使用方式: less [Option] filename 说明: less 的作用与 more 十分相似,都可以用来浏览文字档案的内容,不同的是 less 允许使用者往回卷动 以浏览已经看过的部份,同时因为 less 并未在一开始就读入整个档案,因此在遇上大型档案的开启时,会比一般的文书编辑器(如 vi)来的快速。 范例:
名称: 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
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
” finger [返回] 名称: finger 使用权限:所有使用者 使用方式: finger [options] user[@address] 说明:finger 可以让使用者查询一些其他使用者的资料。会列出来的资料有: Login Name User Name Home directory Shell Login status mail status .plan .project .forward
名称:mail 使用权限:所有使用者 使用方式:mail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] user1 [user 2 ...] 说明: mail 不仅只是一个指令, mail 还是一个电子邮件程式,不过利用 mail 来读信的人应该很少吧!对于系统管理者来说 mail 就很有用,因为管理者可以用 mail 写成 script ,定期寄一些备忘录提醒系统的使用者。
参数: i 忽略 tty 的中断讯号。 (interrupt) 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
说明:重新指定一个或多个行程(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] [n] 说明:即时显示 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] 选择程序的规则 说明: