Linux笔记(shell特殊符号,sort排序,wc统计,uniq去重,tee,tr,split)

本文涉及的产品
转发路由器TR,750小时连接 100GB跨地域
简介:

一、shell特殊符号

*  任意个任意字符

?  任意一个字符

#  注释字符

\  脱义字符

例如:

[root@localhost ~]# a=2

[root@localhost ~]# b=3

[root@localhost ~]# c=$a$b

[root@localhost ~]# echo $c

23

[root@localhost ~]# c=\$a\$b

[root@localhost ~]# echo $c

$a$b


管道符

cut 截取

-d  指定分隔符

-f  指定截取那一段

例如:

[root@localhost ~]# cat /etc/passwd |head -3 | cut -d ":" -f 1-3

root:x:0

bin:x:1

daemon:x:2


$变量的前缀

!$ 正则里面表示行尾


;多条命令写到一行,用;分割


~用户的家目录。正则表达式里表示匹配符


&把命令放到后台


> 正确重定向

>> 正确追加重定向

2> 错误重定向

2>>错误追加重定向

&>正确错误重定向


|| 用在shell中表示或者的意思,如果第一条命令执行成功,则不执行第二条命令。如果第一条命令不成功,则执行第二条命令

&& 当前面的命令执行成功时,才执行后面的命令

[root@localhost ~]# ls

1.txt  anaconda-ks.cfg

[root@localhost ~]# [ -d litongyao ] || mkdir litongyao   (没有litongyao这个目录,则执行第二条)

[root@localhost ~]# ls

1.txt  anaconda-ks.cfg  litongyao

[root@localhost ~]# [ -d litongyao ] && mkdir litongyao   (存在litongyao目录。在执行时会报错)

mkdir: 无法创建目录"litongyao": 文件已存在


二、 sort_wc_uniq命令


sort  排序

sort + 文件名     (默认是以“阿斯玛”排序)

特殊符号>数字>字母

-n            默认以数字去排序(默认字母和特殊符号为0,所以会排在最前面)

-r            反序排序



wc     统计

-l            统计行数

-m            统计字符数 (隐藏的换行符也算   用cat -A 查看隐藏符号)

-w            统计字符串 (默认以空白格或,为分隔符)

 

uniq    去重  (但是要先排好顺序,所以一般和sort一起用)

[root@localhost ~]# uniq 1.txt 

1

2

3

1

2

3

1111

2222

3333

111

[root@localhost ~]# sort 1.txt | uniq 

1

111

1111

2

2222

3

3333


 uniq -c       显示重复次数


[root@localhost ~]# sort 1.txt | uniq -c

      2 1

      1 111

      1 1111

      2 2

      1 2222

      2 3

      1 3333


三、tee_tr_split

tee 和输出重定>向有点像,但是把重定向的内容打印到屏幕上

-a 追加,和>>相似


tr  替换字符

例如:

[root@localhost ~]# echo "litongyao" |tr '[lty]' '[LTY]'

LiTongYao

[root@localhost ~]# echo "litongyao" |tr '[a-z]' '[A-Z]'

LITONGYAO


split 切割文件

split -b 100M + filename  以文件大小切割 (可以指定文件前缀,默认是x开头)

split -l 1000 + filename  以行数切割











本文转自 小新锐 51CTO博客,原文链接:http://blog.51cto.com/13407306/1982924,如需转载请自行联系原作者
目录
相关文章
|
10天前
|
Shell Linux
Linux Shell 脚本入门教程:开启你的自动化之旅
Shell是一种计算机程序,它充当了用户与操作系统之间的接口。在Linux系统中,Shell允许用户通过命令行界面(CLI)来控制计算机。Shell脚本则是一种使用Shell语言编写的脚本,它可以自动执行一系列的命令,帮助用户实现任务自动化,提高工作效率。
|
27天前
|
安全 Shell Linux
探索Linux命令chsh:更改用户的默认shell
`chsh`是Linux命令,用于更改用户的默认登录shell。它涉及用户环境配置和系统安全,允许用户选择更适合自己的shell以提升效率。命令有交互式选项和参数如`-s`来指定新shell。在使用时要注意新shell的可执行性、权限问题及选择合适的shell。例如,要更改为bash,用户可运行`chsh`后按提示操作,而root用户能用`sudo chsh -s /bin/zsh john`为用户`john`设定zsh。在更改前,确认shell路径、权限,并了解不同shell的特点。
|
4天前
|
Java Shell Linux
【Linux】手把手教你做一个简易shell(命令行解释器)
【Linux】手把手教你做一个简易shell(命令行解释器)
7 0
|
28天前
|
监控 Shell Linux
Linux的Shell脚本详解
Linux的Shell脚本详解
|
12天前
|
Shell Linux
Linux环境变量之shell中export定义全局变量和echo 变量的区别
Linux环境变量之shell中export定义全局变量和echo 变量的区别
|
16天前
|
Linux 数据处理
探索Linux下的readlink命令:解析符号链接的利器
`readlink`命令在Linux中用于揭示符号链接的指向,显示它们所链接的实际文件或目录的路径。它可以显示简洁的绝对路径(-f),处理循环链接(-e),或不加换行符输出(-n)。例如,查看`link.txt`指向:`readlink link.txt`;获取绝对路径:`readlink -f link.txt`。使用时要注意链接是否存在、权限问题和可能的循环链接。
|
17天前
|
监控 Unix Shell
探秘GNU/Linux Shell:命令行的魔法世界
探秘GNU/Linux Shell:命令行的魔法世界
20 0
|
1月前
|
Ubuntu Java Linux
Linux centos7 ubuntu 一键安装Java JDK 脚本 shell 脚本
Linux centos7 ubuntu 一键安装Java JDK 脚本 shell 脚本
51 2
|
1月前
|
Shell Linux
shell循环读文件 Linux脚本读文件
shell循环读文件 Linux脚本读文件
26 3
|
1月前
|
Shell Linux
shell linux中shell脚本编写俄罗斯方块
shell linux中shell脚本编写俄罗斯方块
24 1