8.10 shell特殊符号cut命令 8.11 sort_wc_uniq命令 8.12 tee_tr_split命令 8.13 shell特殊符号下

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了8.10 shell特殊符号cut命令 8.11 sort_wc_uniq命令 8.12 tee_tr_split命令 8.13 shell特殊符号下相关的知识,希望对你有一定的参考价值。

8.10 shell特殊符号cut命令

8.11 sort_wc_uniq命令

8.12 tee_tr_split命令

8.13 shell特殊符号下


# 8.10 shell 特殊符_cut命令
---
- * 任意个任意字符
- ?任意一个字符
-  井号#注释字符  写命令的时候前面加一个#,那么这条命令就不生效,包括shell脚本里面也是,前面加个#表示这一行不生效,可以加一些注释说明的文字
```
<[email protected] ~># #ls a.txt
<[email protected] ~>##dkdkdkd
<[email protected] ~>#
```

- \ 脱义字符
```
<[email protected] ~>#a=1
<[email protected] ~>#b=2
<[email protected] ~>#c=$a$b
<[email protected] ~>#echo $c
12
<[email protected] ~>#
```
- 现在就想让这个c=这个$a$b 的字符串,之前给的方法是用单引号,还可以使用\脱义字符
```
<[email protected] ~>#c=‘$a$b^C

<[email protected] ~>#c=\$a\$b
<[email protected] ~>#echo $c
$a$b
<[email protected] ~>#
```

- | 管道符

![mark](http://oqxf7c508.bkt.clouddn.com/blog/20170819/231012229.png?imageslim)

- cut命令的用法
```
<[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] ~>#

<[email protected] ~>#cat /etc/passwd |head -2 |cut -c 4
t
:
<[email protected] ~>#

```
- 针对这前俩行,切割,-d指定分隔符,-f指定段号,-c指定第几个字符 截取它的第一段用 -f 1 ,截取1 2 段就用 -f 1,2 用逗号隔开,1-3段就用-f 1-3  , cut 截取 -c 4 截取第四个字符


# 8.11 sort wc  uniq命令

## sort排序
- 默认sort排序按照 阿斯玛ASCII排序
```
[[email protected] ~]# sort /etc/passwd
adm:x:3:4:adm:/var/adm:/sbin/nologin
aming:x:1000:1005::/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
dbus:x:81:81:System message bus:/:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
games:x:12:100:games:/usr/games:/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
nobody:x:99:99:Nobody:/:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
polkitd:x:998:996:User for polkitd:/:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
root:x:0:0:root:/root:/bin/bash
saslauth:x:996:76:Saslauthd user:/run/saslauthd:/sbin/nologin
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
systemd-bus-proxy:x:999:997:systemd Bus Proxy:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
user1:x:1001:1001::/home/user1:/bin/bash
user2:x:1002:1002::/home/user2:/bin/bash
user3:x:1004:1005::/home/user3:/bin/bash
user4:x:1006:1005::/home/aming111:/sbin/nologin
user5:x:1007:1007::/home/user5:/bin/bash
user6:x:1008:1010::/home/user6:/bin/bash
[[email protected] ~]# 
```
- 先做个实验,取/etc/passwd/的前10行 追加到 1.txt下
```
[[email protected] ~]# head /etc/passwd >> 1.txt
[[email protected] ~]# vim 1.txt

1.txt
2.txt
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
2222222aaaaaaa
488888888888asldkfas
*slkdf
222111
223333
22aaa
<
>
{
]
~                                                                  
~                                                                  
~                                                                  
~                                                                  
~                                                                  
~                                                                  
:wq
```
- sort 1.txt 看下
```
[[email protected] ~]# vim 1.txt
[[email protected] ~]# sort 1.txt
<
>
]
{
1.txt
222111
2222222aaaaaaa
223333
22aaa
2.txt
488888888888asldkfas
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
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
*slkdf
sync:x:5:0:sync:/sbin:/bin/sync
[[email protected] ~]# 
```
- 看下,特殊符号排在前面,然后是数字,然后是字母,然后是*,这就是sort 
- sort -n 会以数字去排序,字母和特殊符号 默认情况下都默认是0
```
[[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
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
*slkdf
sync:x:5:0:sync:/sbin:/bin/sync
1.txt
2.txt
22aaa
222111
223333
2222222aaaaaaa
488888888888asldkfas
[[email protected] ~]# 
```
- sort -nr 加上r 就会反序排序
```
[[email protected] ~]# sort -nr 1.txt
488888888888asldkfas
2222222aaaaaaa
223333
222111
22aaa
2.txt
1.txt
sync:x:5:0:sync:/sbin:/bin/sync
*slkdf
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
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
{
]
>
<
[[email protected] ~]#
```
- sort -t 分隔符 -kn1/-kn1,n2 用的比较少了解下即可
- wc -l 统计行数
- wc -m 统计字符数
- wc -w 统计词
```
[[email protected] ~]# wc -l 1.txt
22 1.txt
[[email protected] ~]# wc -m 1.txt
468 1.txt
[[email protected] ~]#
```
- 先做一个实验vim 2.txt 在里面写入 123 abc
```
[[email protected] ~]# vim 2.txt

123
abc 
~                                                                  
:wq  
[[email protected] ~]# vim 2.txt
[[email protected] ~]# wc -m 2.txt
8 2.txt
[[email protected] ~]# cat -A 2.txt     
cat -A 显示所有内容 所以有2个隐藏的$(换行符$) ,总共就是8个字符
123$
abc$
[[email protected] ~]# 
```
- wc -w统计词  以空白字符 作为分隔符
```
[[email protected]x-01 ~]# wc -w 2.txt
2 2.txt
[[email protected] ~]#
2个词 123 是一个词  abc 是一个词

[[email protected] ~]# vim 2.txt

123
abc 1111,222

[[email protected] ~]# vim 2.txt
[[email protected] ~]# wc -w 2.txt
3 2.txt
[[email protected] ~]# cat 2.txt
123
abc 1111,222
[[email protected] ~]# 
```
- uniq命令
```
[[email protected] ~]# vi 2.txt

123
abc 1111,222
123
abc
1
2
1

[[email protected] ~]# vi 2.txt
[[email protected] ~]# cat 2.txt
123
abc 1111,222
123
abc
1
2
1
[[email protected] ~]#

下面来用nqia 
[[email protected] ~]# uniq 2.txt
123
abc 1111,222
123
abc
1
2
1

没有任何变化?
```
- 再次编辑vim 2.txt 把内容 2放到下面去
```
[[email protected] ~]# vim 2.txt
[[email protected] ~]# cat 2.txt
123
abc 1111,222
123
abc
1
1
2
[[email protected] ~]# uniq 2.txt
123
abc 1111,222
123
abc
1
2
[[email protected] ~]#
```
- 现在去重了,原来是 1 1 2 现在是 1 2,所以去重是条件的,需要先排序再去重
```
[[email protected] ~]# sort 2.txt  先排序
1
1
123
123
2
abc
abc 1111,222
[[email protected] ~]# sort 2.txt |uniq 先排序再管道符去重
1
123
2
abc
abc 1111,222
[[email protected] ~]#
```
```
[[email protected] ~]# sort 2.txt |uniq -c 
uniq -c 统计重复次数
      2 1
      2 123
      1 2
      1 abc
      1 abc 1111,222
[[email protected] ~]# 
```


- [x]  srot 、cut、uniq、cat、less、more、head、tail、wc等等会对文件做一些操作,但是并不会更改文件的内容


# 8.12 tee tr split 命令

- tee 和 输出重定向很类似

```
[[email protected] ~]# sort 2.txt |uniq -c > a.txt
[[email protected] ~]# cat a.txt
      2 1
      2 123
      1 2
      1 abc
      1 abc 1111,222
[[email protected] ~]#
[[email protected] ~]# sort 2.txt |uniq -c | tee a.txt
      2 1
      2 123
      1 2
      1 abc
      1 abc 1111,222
[[email protected] ~]# 
```
- 可以先清空a.txt里的内容 >a.txt  就是清空
```
[[email protected] ~]# >a.txt
[[email protected] ~]# cat a.txt
[[email protected] ~]# sort 2.txt |uniq -c | tee a.txt
      2 1
      2 123
      1 2
      1 abc
      1 abc 1111,222
[[email protected] ~]#
```
- tee -a 追加 等同于>>
```
[[email protected] ~]# sort 2.txt |uniq -c | tee -a a.txt
      2 1
      2 123
      1 2
      1 abc
      1 abc 1111,222
[[email protected] ~]# cat a.txt
      2 1
      2 123
      1 2
      1 abc
      1 abc 1111,222
      2 1
      2 123
      1 2
      1 abc
      1 abc 1111,222
[[email protected] ~]# 
```
- tr 命令 tr 是用来替换字符的  tr "a" "b",  大小写替换tr ‘[a-z]‘ ‘[A-Z]‘
```
[[email protected] ~]# echo "aminglinux" |tr ‘a‘ ‘A‘
Aminglinux
[[email protected] ~]# 
[[email protected] ~]# echo "aminglinux" |tr ‘[al]‘ ‘[AL]‘
AmingLinux

全部换成大写
[[email protected] ~]# echo "aminglinux" |tr ‘[a-z]‘ ‘[A-Z]‘
AMINGLINUX
[[email protected] ~]#
改成数字
[[email protected] ~]# echo "aminglinux" |tr ‘[a-z]‘ ‘1‘
1111111111
[[email protected] ~]# 
```
- split 切割,一个大文件切割成小文件 -b 大小 (默认单位字节),-l 行数
[[email protected] ~]# split -b 100M bigfile^C
[[email protected] ~]# split -l 1000 bigfile^C

```

[[email protected] ~]# find /etc/ -type f -name "*conf" -exec cat {} >> a.txt \;
[[email protected] ~]# du -sh a.txt
256K	a.txt
[[email protected] ~]# find /etc/ -type f -name "*conf" -exec echo {} >> a.txt \;
[[email protected] ~]# du -sh a.txt
448K	a.txt

[[email protected] ~]# ls
111  1_heard.txt  1.txt   1.txt.bak  2.txt      3.txt  anaconda-ks.cfg.1  biji.txt
123  1_sorft.txt  1.txt~  234        2.txt.bak  4.txt  bb.txt             test
[[email protected] ~]# 
[[email protected] ~]# mv a.txt test/
[[email protected] ~]# cd test
[[email protected] test]# ls
a.txt
[[email protected] test]# 
```


- split 分割成1000字节一个文件
```
[[email protected] test]# split -b 1000 a.txt
[[email protected] test]# ls
a.txt  xan  xbb  xbp  xcd  xcr  xdf  xdt  xeh  xev  xfj  xfx  xgl  xgz  xhn  xib  xip  xjd  xjr
xaa    xao  xbc  xbq  xce  xcs  xdg  xdu  xei  xew  xfk  xfy  xgm  xha  xho  xic  xiq  xje  xjs
xab    xap  xbd  xbr  xcf  xct  xdh  xdv  xej  xex  xfl  xfz  xgn  xhb  xhp  xid  xir  xjf  xjt
xac    xaq  xbe  xbs  xcg  xcu  xdi  xdw  xek  xey  xfm  xga  xgo  xhc  xhq  xie  xis  xjg  xju
xad    xar  xbf  xbt  xch  xcv  xdj  xdx  xel  xez  xfn  xgb  xgp  xhd  xhr  xif  xit  xjh  xjv
xae    xas  xbg  xbu  xci  xcw  xdk  xdy  xem  xfa  xfo  xgc  xgq  xhe  xhs  xig  xiu  xji  xjw
xaf    xat  xbh  xbv  xcj  xcx  xdl  xdz  xen  xfb  xfp  xgd  xgr  xhf  xht  xih  xiv  xjj  xjx
xag    xau  xbi  xbw  xck  xcy  xdm  xea  xeo  xfc  xfq  xge  xgs  xhg  xhu  xii  xiw  xjk  xjy
xah    xav  xbj  xbx  xcl  xcz  xdn  xeb  xep  xfd  xfr  xgf  xgt  xhh  xhv  xij  xix  xjl  xjz
xai    xaw  xbk  xby  xcm  xda  xdo  xec  xeq  xfe  xfs  xgg  xgu  xhi  xhw  xik  xiy  xjm  xka
xaj    xax  xbl  xbz  xcn  xdb  xdp  xed  xer  xff  xft  xgh  xgv  xhj  xhx  xil  xiz  xjn
xak    xay  xbm  xca  xco  xdc  xdq  xee  xes  xfg  xfu  xgi  xgw  xhk  xhy  xim  xja  xjo
xal    xaz  xbn  xcb  xcp  xdd  xdr  xef  xet  xfh  xfv  xgj  xgx  xhl  xhz  xin  xjb  xjp
xam    xba  xbo  xcc  xcq  xde  xds  xeg  xeu  xfi  xfw  xgk  xgy  xhm  xia  xio  xjc  xjq
[[email protected] test]# du -sh 
1.3M	.

[[email protected] test]# du -sh *
256K	a.txt
4.0K	xaa
4.0K	xab
4.0K	xac
4.0K	xad
4.0K	xae
4.0K	xaf
4.0K	xag

...   这里为了节约空间,省略了很多

4.0K	xjw
4.0K	xjx
4.0K	xjy
4.0K	xjz
4.0K	xka
[[email protected] test]# du -sb *
260054	a.txt
1000	xaa
1000	xab
1000	xix
1000	xiy
1000	xiz
...   这里为了节约空间,省略了很多
1000	xjt
1000	xju
1000	xjv
1000	xjw
1000	xjx
1000	xjy
1000	xjz
54	xka
[[email protected] test]# ls
a.txt  xan  xbb  xbp  xcd  xcr  xdf  xdt  xeh  xev  xfj  xfx  xgl  xgz  xhn  xib  xip  xjd  xjr
xaa    xao  xbc  xbq  xce  xcs  xdg  xdu  xei  xew  xfk  xfy  xgm  xha  xho  xic  xiq  xje  xjs
xab    xap  xbd  xbr  xcf  xct  xdh  xdv  xej  xex  xfl  xfz  xgn  xhb  xhp  xid  xir  xjf  xjt
xac    xaq  xbe  xbs  xcg  xcu  xdi  xdw  xek  xey  xfm  xga  xgo  xhc  xhq  xie  xis  xjg  xju
xad    xar  xbf  xbt  xch  xcv  xdj  xdx  xel  xez  xfn  xgb  xgp  xhd  xhr  xif  xit  xjh  xjv
xae    xas  xbg  xbu  xci  xcw  xdk  xdy  xem  xfa  xfo  xgc  xgq  xhe  xhs  xig  xiu  xji  xjw
xaf    xat  xbh  xbv  xcj  xcx  xdl  xdz  xen  xfb  xfp  xgd  xgr  xhf  xht  xih  xiv  xjj  xjx
xag    xau  xbi  xbw  xck  xcy  xdm  xea  xeo  xfc  xfq  xge  xgs  xhg  xhu  xii  xiw  xjk  xjy
xah    xav  xbj  xbx  xcl  xcz  xdn  xeb  xep  xfd  xfr  xgf  xgt  xhh  xhv  xij  xix  xjl  xjz
xai    xaw  xbk  xby  xcm  xda  xdo  xec  xeq  xfe  xfs  xgg  xgu  xhi  xhw  xik  xiy  xjm  xka
xaj    xax  xbl  xbz  xcn  xdb  xdp  xed  xer  xff  xft  xgh  xgv  xhj  xhx  xil  xiz  xjn
xak    xay  xbm  xca  xco  xdc  xdq  xee  xes  xfg  xfu  xgi  xgw  xhk  xhy  xim  xja  xjo
xal    xaz  xbn  xcb  xcp  xdd  xdr  xef  xet  xfh  xfv  xgj  xgx  xhl  xhz  xin  xjb  xjp
xam    xba  xbo  xcc  xcq  xde  xds  xeg  xeu  xfi  xfw  xgk  xgy  xhm  xia  xio  xjc  xjq
[[email protected] test]# rm -f x*
[[email protected] test]# ls
a.txt
[[email protected] test]# 
```
指定每个100k split -b  (默认大小是字节)
```
[[email protected] test]# split -b 100k a.txt
[[email protected] test]# ls
a.txt  xaa  xab  xac
[[email protected] test]# du -sh *
256K	a.txt
100K	xaa
100K	xab
56K	xac
[[email protected] test]# rm -f x*
[[email protected] test]# split -b 100k abc
split: 无法打开"abc" 读取数据: 没有那个文件或目录
[[email protected] test]# split -b 100k abc.
split: 无法打开"abc." 读取数据: 没有那个文件或目录
[[email protected] test]# split -b 100k a.txt  abc
[[email protected] test]# ls
abcaa  abcab  abcac  a.txt
[[email protected]nux-01 test]# rm -f abc*    指定名字
[[email protected] test]# split -b 100k a.txt  abc.
[[email protected] test]# ls
abc.aa  abc.ab  abc.ac  a.txt
[[email protected] test]# rm -f abc*
[[email protected] test]#
```
- 除了指定大小之外,还可以指定行 split -l 
```
[[email protected] test]# split -l 1000 a.txt
[[email protected] test]# ls
a.txt  xaa  xab  xac  xad  xae  xaf  xag
[[email protected] test]# ls -l
总用量 520
-rw-r--r--. 1 root root 260054 8月  20 17:45 a.txt
-rw-r--r--. 1 root root  44712 8月  20 18:15 xaa
-rw-r--r--. 1 root root  44151 8月  20 18:15 xab
-rw-r--r--. 1 root root  37982 8月  20 18:15 xac
-rw-r--r--. 1 root root  39801 8月  20 18:15 xad
-rw-r--r--. 1 root root  35102 8月  20 18:15 xae
-rw-r--r--. 1 root root  39350 8月  20 18:15 xaf
-rw-r--r--. 1 root root  18956 8月  20 18:15 xag
[[email protected] test]# wc -l *  查看行数
  6601 a.txt
  1000 xaa
  1000 xab
  1000 xac
  1000 xad
  1000 xae
  1000 xaf
   601 xag
 13202 总用量
[[email protected] test]#
```

# 8.13  shell特殊符号下
![mark](http://oqxf7c508.bkt.clouddn.com/blog/20170820/225015664.png?imageslim)

- $表示变量前缀,!$组合,正则里面表示行尾
- ;多条命令写到一行,用分号分割
```
[[email protected] ~]# ls 1.txt; wc -l 2.txt
1.txt
7 2.txt
[[email protected] ~]# 
```
- ~表示用户的家目录,后面正则表达式 表示匹配符
- &放到命令后面,会把命令丢到后台
- > ,>> , 2> ,2>> , &>
- []指定字符中的一个[0-9],[a-zA-Z],[abc]
-||和 && 用于命令之间
1. ||表示俩条命令之间,
如果前面的命令执行不成功,就会执行第二条命令,或1命令或2命令
如果前面的命令1执行成功了,就不再执行后面的命令2。

```
[[email protected] ~]# ls la.txt || wc -l 2.txt
ls: 无法访问la.txt: 没有那个文件或目录
7 2.txt
[[email protected] ~]# ls 1.txt || wc -l 2.txt
1.txt
[[email protected] ~]# 
```


2. && 正好相反
如果前面的命令错了,就不再执行后面的命令。
只有前面的命令成功了,才会执行后面的命令。

```
[[email protected] ~]# ls la.txt && wc -l 2.txt
ls: 无法访问la.txt: 没有那个文件或目录
[[email protected] ~]# ls 1.txt && wc -l 2.txt
1.txt
7 2.txt
[[email protected] ~]#
```

- 举例
```
[[email protected] ~]# [ -d aminglinux ] || mkdir aminglinux
- [ -d aminglinux ] || mkdir aminglinux
如果aminglinux这个目录不存在就创建aminglinux目录,

[[email protected] ~]# ls
111  1_heard.txt  1.txt   1.txt.bak  2.txt      3.txt  aminglinux         bb.txt    test
123  1_sorft.txt  1.txt~  234        2.txt.bak  4.txt  anaconda-ks.cfg.1  biji.txt
[[email protected] ~]# [ -d aminglinux ] &&  mkdir aminglinux
如果目录aminglinux 存在,再去创建目录aminglinux,
mkdir: 无法创建目录"aminglinux": 文件已存在

[[email protected] ~]# [ -d aminglinux ] || mkdir aminglinux
如果这个目录已经存在,就不会执行后面的命令
[[email protected] ~]# 
```




# 拓展
- [x]  相关测验题目:http://ask.apelearn.com/question/5437
1. source exec 区别 http://alsww.blog.51cto.com/2001924/1113112
2. Linux特殊符号大全 http://ask.apelearn.com/question/7720
3. sort并未按ASCII排序 http://blog.csdn.net/zenghui08/article/details/7938975


以上是关于8.10 shell特殊符号cut命令 8.11 sort_wc_uniq命令 8.12 tee_tr_split命令 8.13 shell特殊符号下的主要内容,如果未能解决你的问题,请参考以下文章

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

8.10 shell特殊符号cut命令 8.11 sort_wc_uniq命令 8.12 tee_tr_split命令 8.13 shell特殊符号下

五周第五次课 8.10 shell特殊符号cut命令 8.11 sort_wc_uniq命令 8.1

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

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

五周第五次课(1月12日) 8.10 shell特殊符号cut命令 8.11 sort_wc_uniq命令 8.12 tee_tr_split命令 8.13 shell特殊符号