shell特殊字符,shell的几个命令

shell中的特殊字符

“*”:代表零个或多个字符 
“?”:代表一个任意字符 
“#”:注释说明 
“\”:脱意字符,将特殊字符还原成普通字符 
“|”:管道符,将面命令的输出作为后面字符的输入,一般针对对文档的操作。如;cat,less,head,tail,grep,cut,sort,wc. 
“$”:变量的标识符, 
“~”:用户的家目录 
“&”:把命令丢到后台 
“>”:重定向 
“>>”:追加重定向 
“2>”:错误重定向 
“2>>”:错误追加重定向 
“&>”:正确错误都重定向 
“&>>”:正确错误都追加重定向

“;”:命令的分割符 
“||”:或者 
“&&”并且

command1 ;command2 :不管command1是否执行成功都会执行command2

command1 ||command2:command1执行成功则command2不执行,command1不执行成功则command2执行,command1和command2两条命令中有且只有一条能执行

command1&&command2:command1执行成功后command2才执行,command1不能执行则command2也不能执行

Linux特殊符号大全http://ask.apelearn.com/question/7720

cut命令:用来截取某一个字段 
命令格式:cut -d ‘分割字符’ [-cf] n (n为数字) 
选项: 
-d :后接分割字符,分割字符用单引号括起来 
-c :后接第几个字符 
-f :后接第几个区块

取/etc/passwd文件下的前两行的第一个区块

[root@shuai-01 ~]# cat /etc/passwd |head -2 |cut -d ":" -f 1
root
bin

取/etc/passwd文件下的前两行的第一个到第三个区块

[root@shuai-01 ~]# cat /etc/passwd |head -2 |cut -d ":" -f 1-3root:x:0
bin:x:1

sort命令:用来做排序 
命令:sort 
命令格式:sort [-t分割字符] [-kn1,n2] [-nru] 
选项: 
-n :使用纯数字排序,这时字母和特殊字符被认为是0 
-r :反向排序 
-u :表示去重复

sort的排序规则http://blog.csdn.net/zenghui08/article/details/7938975

直接排序:

[root@shuai-01 ~]# sort 1.txt

111
11111111
$1234
666666
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
*shhia
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
sync:x:5:0:sync:/sbin:/bin/sync

反向排序:

[root@shuai-01 ~]# sort -r 1.txt
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
*shhia
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
666666
$1234
11111111
111

命令wc:用来统计文档的行数,字符数,和词数 
命令:wc 
命令格式:wc [选项] 文件 
选项: 
-l :统计行数 
-m :统计字符数 
-w :统计词数

统计文件行数:

[root@shuai-01 ~]# wc -l 1.txt
16 1.txt

统计文件字符数(隐藏字符也算哦):

[root@shuai-01 ~]# cat -A 3.txt
12$
12$

[root@shuai-01 ~]# wc -m 3.txt
6 3.txt

统计词数(以空格或空白字符去分)

uniq命令:用来删除重复行 
注意:删除重复行的条件是两重复行必须在相邻两行 
命令:uniq 
选项; 
-c :统计重复次数

直接排序:

[root@shuai-01 ~]# cat 4.txt
111
222
111
333
333
444
[root@shuai-01 ~]# uniq 4.txt
111
222
111
333
444

显示行数:

[root@shuai-01 ~]# uniq -c 4.txt
      1 111
      1 222
      1 111
      2 333
      1 444

删除重复行跟排序一起用就很完美:

[root@shuai-01 ~]# sort 4.txt |uniq -c
      2 111
      1 222
      2 333
      1 444

tee命令:类似于重定向“>”,但是能显示在屏幕上 
命令:tee 
选项: 
-a :追加重定向

[root@shuai-01 ~]# sort 4.txt |uniq -c |tee 2.txt
      2 111
      1 222
      2 333
      1 444
[root@shuai-01 ~]# cat 2.txt
      2 111
      1 222
      2 333
      1 444

-a选项:

[root@shuai-01 ~]# sort 4.txt |uniq -c |tee -a 2.txt
      2 111
      1 222
      2 333
      1 444
[root@shuai-01 ~]# cat 2.txt
      2 111
      1 222
      2 333
      1 444
      2 111
      1 222
      2 333
      1 444

tr命令:用于替换字符 
替换某几个字符(将s换成S,i换成I):

[root@shuai-01 ~]# echo "shuai" |tr '[si]' '[AI]'
AhuaI

将全部小写换成大写:

[root@shuai-01 ~]# echo "shuai" |tr '[a-z]' '[A-Z]'
SHUAI

split命令:用于切割文档 
命令;split 
选项: 
-b :根据大小来切割 
-l :根据行来切割 
根据大小来切割文件:

[root@shuai-01 sh]# split -b 100K a.txt
[root@shuai-01 sh]# ls -lh
总用量 504K
-rw-r--r--. 1 root root 252K 11月 18 01:48 a.txt
-rw-r--r--. 1 root root 100K 11月 18 01:51 xaa
-rw-r--r--. 1 root root 100K 11月 18 01:51 xab
-rw-r--r--. 1 root root  52K 11月 18 01:51 xac

根据行数来切割文件:

[root@shuai-01 sh]# split -l 1000 a.txt ao.
[root@shuai-01 sh]# wc -l *
  1000 ao.aa
  1000 ao.ab
  1000 ao.ac
  1000 ao.ad
  1000 ao.ae
  1000 ao.af
   498 ao.ag
  6498 a.txt
  2355 xaa
  2706 xab
  1437 xac
 19494 总用量
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值