shell特殊字符,cut,sort,wc,uniq,tee,tr,split命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell特殊字符,cut,sort,wc,uniq,tee,tr,split命令相关的知识,希望对你有一定的参考价值。

shell特殊字符

  • *任意个字符
  • ?任意一个字符
  • #注释字符
  • \脱义字符
  • |管道符
  • $变量前缀,!$组合,正则里面表示行尾
  • ;多条命令写到一行,用分号分隔
  • ~用户家目录,正则表达式表示匹配符
  • &放到命令后面,会把命令丢到后台
  • \>,>>,2>,2>>,&>(正确和错误重定向)
  • []指定字符中的一个,[0-9],[a-zA-Z],[abc]
  • ||当前面的命令成功不执行后面的,前面不成功才执行后面的
  • &&当前面的命令不成功不执行后面的,前面成功才执行后面哦

cut命令

  • 截取字符串
  • -d指定分隔符,-f指定截取指定的字段号,-c指定第几个字符
    [[email protected] ~]# cat /etc/passwd |head -2
    root:x:0:0:root:/root:/bin/bash
    bin:x:1:1:bin:/bin:/sbin/nologin
    [[email protected] ~]# cat /etc/passwd |head -2 |cut -d ":" -f 1
    root
    bin
    [[email protected] ~]# cat /etc/passwd |head -2 |cut -d ":" -f 1,2
    root:x
    bin:x
    [[email protected] ~]# cat /etc/passwd |head -2 |cut -d ":" -f 1-3
    root:x:0
    bin:x:1
    [[email protected] ~]# cat /etc/passwd |head -2 |cut -c 4
    t
    :

sort命令

  • ASCII码排序,按字母顺序排序
    [[email protected] ~]# sort /etc/passwd
    adm:x:3:4:adm:/var/adm:/sbin/nologin
    aming:x:1000:1000::/home/aming:/bin/bash
    bin:x:1:1:bin:/bin:/sbin/nologin
    chrony:x:997:995::/var/lib/chrony:/sbin/nologin
    daemon:x:2:2:daemon:/sbin:/sbin/nologin
  • -n以数字排序,字母和特殊符号默认为零
    [[email protected] ~]# sort -n 1.txt
    [
    ]
    adm:x:3:4:adm:/var/adm:/sbin/nologin
    bin:x:1:1:bin:/bin:/sbin/nologin
    daemon:x:2:2:daemon:/sbin:/sbin/nologin
    halt:x:7:0:halt:/sbin:/sbin/halt
    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
    mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
    operator:x:11:0:operator:/root:/sbin/nologin
    root:x:0:0:root:/root:/bin/bash
    *sdshdjhj
    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
    sync:x:5:0:sync:/sbin:/bin/sync
    22aaa
    2222222aaaaaa
    11134444
    222221111
    4234234252sdadhkajhkj
  • -r反序排列
    [[email protected] ~]# sort -nr 1.txt
    4234234252sdadhkajhkj
    222221111
    11134444
    2222222aaaaaa
    22aaa
    sync:x:5:0:sync:/sbin:/bin/sync
    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
    *sdshdjhj
    root:x:0:0:root:/root:/bin/bash
    operator:x:11:0:operator:/root:/sbin/nologin
    mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
    halt:x:7:0:halt:/sbin:/sbin/halt
    daemon:x:2:2:daemon:/sbin:/sbin/nologin
    bin:x:1:1:bin:/bin:/sbin/nologin
    adm:x:3:4:adm:/var/adm:/sbin/nologin
    }
  • -t分隔符,-kn1/-kn1,n2

wc命令

  • -l统计行数
    [[email protected] ~]# wc -l 1.txt 
    23 1.txt
  • -m 统计字符数
  • -w 统计词组数,用空白字符区分

uniq命令

tee命令

  • 和>类似,重定向的同时还在屏幕显示
    [[email protected] ~]# sort 2.txt |uniq -c > a.txt 
    [[email protected] ~]# sort 2.txt |uniq -c |tee a.txt 
    2 1
    2 123
    1 2
    1 abc
    1 abc 111,222
  • 加-a和>>类似,追加并显示追加的内容

tr替换字符

[[email protected] ~]# echo "aminglinux" |tr ‘[al]‘ ‘[AL]‘
AmingLinux
[[email protected] ~]# echo "aminglinux" |tr ‘[a-z]‘ ‘[A-Z]‘
AMINGLINUX

split命令

  • -b以文件大小切割,后面加文件名,还可以在后面指定切割后的文件名前缀
  • -l以行数大小切割,后面加文件名,还可以在后面指定切割后的文件名前缀
    [[email protected] test]# split -b 100k q.txt abc.
    [[email protected] test]# ls
    abc.aa  abc.ab  abc.ac  q.txt
    [[email protected] test]# split -l 1000 q.txt abc.
    [[email protected] test]# ls
    abc.aa  abc.ab  abc.ac  abc.ad  abc.ae  abc.af  abc.ag  q.txt

测试

以上是关于shell特殊字符,cut,sort,wc,uniq,tee,tr,split命令的主要内容,如果未能解决你的问题,请参考以下文章

shell特殊字符,cut,sort,wc,uniq,tee,tr,split命令

shell特殊符号cut命令 sort_wc_uniq命令 tee_tr_split命令 shell特殊符号

shell特殊符 _cut命令 sort_wc_uniq命令 tee_tr_split命令

shell特殊符号cut,sort_wc_uniq,tee_tr_split, shell特殊符号

shell中的特殊符号和cut,sort,wc,uniq,tee,tr,split命令

8.10 shell特殊符号cut命令 8.11 sort_wc_uniq命令 8.12 tee_t