关于 sort cut join paste

常用的几个文件显示命令 sort  cut  join  paste

join 命令可以非常灵活的合并两个文件
例如 有  b c 两个文件
# more b c
b
::::::::::::::
1 alex work
2 tom  teacher
3 cic  NG
4 apple DRIVER
5 jack  DOCTOR
::::::::::::::
c
::::::::::::::
1 alex shenzhen
2 tom  zhaoqing
3 cic  guangzhou
4 apple shanghai
5 jack  beijing
我现在想提取文件b的工作 文件c的地点
[root@mysql1 test]# join -o 1.1,1.2,1.3,2.3 b c
1 alex work shenzhen
2 tom teacher zhaoqing
3 cic NG guangzhou
4 apple DRIVER shanghai
5 jack DOCTOR beijing
 
join // 用来链接两个文件
    -a1 //代表第1个文件,显示不匹配行
    -t //用来设置非空格及tab 如-t:
    -o 1.3,2,1//选择性链接 意指链接1文件第3域 和2文件1域
    -j1 2 -j2 1 //这个特别注意,自定义链接方式 这里是指以1文件的第2域和2文件的第1域来做链接操作  默认是1和2的文件1域作链接

cut //从标准文件中剪切域
    -d //为域分隔符如:-d:以冒号分隔
    -f1,5 //剪粘第1域和第5域
    -f1,6-7 //1,6到7域
    -c1-50 //这是剪粘字符 和/f差不多用法 1-50的字符

    cut -d: -f1,2 /etc/passwd
 
  paste //粘贴
   
    pase 文件1 文件2 //两个结合成一个文件以域的方式   

  split //分割文件,当很大时管用
    split -2 file //每两行分割文件
    然后 ll
    就知道多了哪几个文件了
 

 sort //不同的域按顺序排序
    
    -t //域分割符,不用此参数为空格或TAB.指定时用 -t:以冒号分
    -r //逆顺排,大到小,默认为小到大
    +n //n为域,以0为起点
    n //为数值域结合+n使用
    -b //使用域进行分类忽略第一个空格
    -n //去掉某域进行分类
    -u //去除重复行
   
    more sedfile | sort -r +1 //以域1来排序,且是逆顺
    ll | sort -r +6
    more heel | sort -t: +2


 

你可能感兴趣的:(linux,命令,职场,休闲,文件合并)