Prayer

在一般中寻求卓越
posts - 1256, comments - 190, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理
sort命令将许多不同的域按不同的列顺序分类。
1、sort选项
 sort命令的一般格式为:
  sort -cmu -o output_file [other options] +pos1 +pos2 input_files
  下面简要介绍一下s o r t的参数:
  -c 测试文件是否已经分类。
  -m 合并两个分类文件。
  -u 删除所有复制行。
  -o 存储s o r t结果的输出文件名。
  其他选项有:
  -b 使用域进行分类时,忽略第一个空格。
  -n 指定分类是域上的数字分类。
  -t 域分隔符;用非空格或t a b键分隔域。
  -r 对分类次序或比较求逆。
  +n n为域号。使用此域号开始分类。
  n n为域号。在分类比较时忽略此域,一般与+ n一起使用。
  post1 传递到m,n。m为域号,n为开始分类字符数;例如4,6意即以第5域分类,从第7个字符开始。
2、sort启动方式
  缺省情况下, s o r t认为一个空格或一系列空格为分隔符。要加入其他方式分隔,使用- t选项。
  sort执行时,先查看是否为域分隔设置了- t选项,如果设置了,则使用它来将记录分隔成域0、域1等等;
 如果未设置,用空格代替。缺省时s o r t将整个行排序,指定域号的情况例外。
  关于s o r t的一个重要事实是它参照第一个域作为域0,域1是第二个域,等等。
3、文件是否已分类
  sort -c data.txt
4、sort分类求逆
 如果要逆向s o r t结果,使用-r选项。
   sort -t: -r video.txt
5、按指定域分类
 有时需要只按第2域(分类键1)分类。
  sort -t: +1 video.txt

6、数值域分类
 用-n选项。必须用,不然得不到想要的结果。
  sort -t: +3n video.txt
7、唯一性分类
 使用- u选项进行唯一性(不重复)分类以去除重复行。
8、使用k的其他sort方法
 sort还有另外一些方法指定分类键。可以指定k选项。
  sort -t: -k4 video.txt
 
 使用k做分类键排序: 
 可以指定分类键次序。先以第4域,再以第1域分类,命令为-k4 -k1
  sort -t: -k4 -k1 video.txt
9、指定sort序列
 可以指定分类键顺序,也可以使用- n选项指定不使用哪个分类键进行查询。看下面的sort命令:
  sort +0 -2 +3
 该命令意即开始以域0分类,忽略域2,然后再使用域3分类。
10、pos用法
 指定开始分类的域位置的另一种方法是使用如下格式:
  sort  +filed.characterin
 意即从filed开始分类,但是要在此域的第characterin个字符开始。
11、使用head和tail将输出分类
  可以使用h e a d或t a i l查阅任何大的文本文件
  head -200 filename
12、awk使用sort输出结果
13、将两个分类文件合并
  将文件合并前,它们必须已被分类.
  使用-m +0。将这个文件并入已存在的分类文件v i d e o . s o r t,要以名称域进行分类,实际上没有必要加入+ o,但为了保险起见,还是加上的好。
   sort -t: -m +0 video2.txt video.sort

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理