SA118中文翻译 5 Solaris8入门教材( 二 )


第三部分为file2文件的显示,显示file2文件的行数,file2中的实际行,与file1不同的行前面有(+)标签 。
例如,执行下面的命令使用diff来比较文件:
$ cat fruit
lemon
orange
apple
banana
pear
mango
tomato
pomegranate
$ cat fruit2
lemon
orange
apple
banana
tomato
guava
mango
pomegranate
$ diff -c fruit fruit2
*** fruit Wed Jan 12 15:50:36 2000
--- fruit2 Wed Jan 12 15:51:04 2000
***************
*** 2,8 ****
orange
apple
banana
- pear
- mango
tomato
pomegranate
--- 2,8 ----
orange
apple
banana
tomato
guava
mango
pomegranate
$

数据排序
sort命令排列文本行,并把文件打印输出到屏幕上 。Sort命令提供了一种以字母或者数字顺序快速组织数据的方法 。默认方式下,sort命令使用white space来分割文件中的不同域 。
命令格式
sort –options filenames
选项
可用的选项包括定义排序的类型、从哪个域开始排序 。
-n 以数字方式排序
( |-)n以n个分隔符开始( n)、结束(-n)的域排序
-r反向排序
-f忽略大小写
nM排列域的前三个字符作为缩写的月份名称
-d排列目录顺序,只考虑字母、数字和空格 。其他字符忽略
-o filename输出结果到指定filename文件中
-b在限定起始和结束排序域时忽略开头的空格字符
-t char使用char字符作为域分隔符,如果没有指定该参数,则使用空格字符作为默认参数
使用带不同选项的sort命令
下面的示例显示了如何使用带不同选项的sort命令:
$ cat fileA
Annette 48486
JamIE 48481
Fred 48487
Sondra 48483
Janet 48482
$
$ sort fileA
Annette 48486
Fred 48487
Jamie 48481
Janet 48482
Sondra 48483
$ sort1n fileA
Jamie 48481
Janet 48482
Sondra 48483
Annette 48486
Fred 48487
第一条命令使用cat命令来显示文件的内容,第一条sort命令按字母排序,从每行的第一个字符开始 。
第二条sort命令对第二个域按数字排序(使用 1语法跳过一个分隔符) 。
在一个文件中的不同域使用sort命令
下面的示例描述了如何在一个文件中的不同域上使用sort命令:
$ ls -ld f* > list
$ cat list
-rw-r--r-- 1 user1 staff 218 Mar 1 11:36 feathers
-rw-r--r-- 1 user1 staff 218 Mar 1 11:36 feathers_6
-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.1
-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.2
-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.3
-rw-r--r-- 1 user1 staff 1696 Feb 22 14:51 file1
-rw-r--r-- 1 user1 staff 156 Mar 1 14:48 file2
-rw-r--r-- 1 user1 staff 218 Feb 22 14:51 file3
-rw-r--r-- 1 user1 staff 137 Feb 22 14:51 file4
-rw-r--r-- 1 user1 staff 56 Feb 22 14:51 fruit
-rw-r--r-- 1 user1 staff 57 Feb 22 14:51 fruit2
$ sort -rn4 list -o num.list
$ cat num.list
-rw-r--r-- 1 user1 staff 1696 Feb 22 14:51 file1
-rw-r--r-- 1 user1 staff 218 Mar 1 11:36 feathers_6
-rw-r--r-- 1 user1 staff 218 Mar 1 11:36 feathers
-rw-r--r-- 1 user1 staff 218 Feb 22 14:51 file3
-rw-r--r-- 1 user1 staff 156 Mar 1 14:48 file2
-rw-r--r-- 1 user1 staff 137 Feb 22 14:51 file4
-rw-r--r-- 1 user1 staff 57 Feb 22 14:51 fruit2
-rw-r--r-- 1 user1 staff 56 Feb 22 14:51 fruit
-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.3
-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.2
-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.1
$ sort5M6n list -o update.list
$ cat update.list
-rw-r--r-- 1 user1 staff 56 Feb 22 14:51 fruit
-rw-r--r-- 1 user1 staff 57 Feb 22 14:51 fruit2
-rw-r--r-- 1 user1 staff 137 Feb 22 14:51 file4
-rw-r--r-- 1 user1 staff 218 Feb 22 14:51 file3
-rw-r--r-- 1 user1 staff 1696 Feb 22 14:51 file1
-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.1
-rw-r--r-- 1 user1 staff 0 Feb 25 12:54 file.2

推荐阅读