linux | sort、uniq、history、xargs、grep 正则表达式(不深入)

1.正则表达式

sort命令

bash 复制代码
sort  aaa.txt

#把内容读到内存,然后以行为单位进行排序并把结果输出到stdout(因为直接把排序结果输出,所以可以重定向),但是并不修改源文件内容。

参考如下

bash 复制代码
sort hello > hello_sort

uniq命令

bash 复制代码
uniq  aaa.txt

#流程和sort类似,也是把相邻的相同行去掉,最后输出。注意间隔的相同行无法去除。

如何把文件所有向同行都给去掉,达到完全去重?

xargs

bash 复制代码
history		#查看历史命令		参考 上键 下键

参考:find /usr/include -name stdio.h | xargs ls -l

解决方式如下

bash 复制代码
sort aaa.txt | uniq > bbb.txt		#严格去重后的数据保存在bbb.txt中
bash 复制代码
wc [-c/-l/-w] aaa.txt		#-c计算文件多少字节、-l计算多少行、-w计算多少个字
bash 复制代码
#iconv 修改字符集
#iconv [options] [-f from-encoding] [-t to-encoding] [inputfile]
iconv -f gbk -t utf-8 aaa.txt			#例如把aaa.txt的gbk编码格式转换成utf-8
bash 复制代码
grep #(全局 正则表达式 打印)	

参数:

-E 表示使用正则表达式regexp

-n 显示行号

-i 忽略正则表达式中的大小写

正则表达式:

基本单位:普通字符,转义字符, [0-9]

基本操作:

连接 ab

重复

重复零次或一次 ?

重复一次或多次 +

重复任意次数 *

{x, y}匹配前一项内容重复的次数介于x和y之间

{x} 匹配前一项内容x次

{x,} 匹配前一项最少x次

{, x} 匹配前一项最多x次

举例:

bash 复制代码
grep -nE "txt" a.txt			#匹配所有包含txt的行
bash 复制代码
grep -nE "[rw]" a.txt	#匹配含r或者含w
bash 复制代码
grep -nE "(rw)" #a.txt匹配包含rw
相关推荐
子非衣1 小时前
MySQL修改JSON格式数据示例
android·mysql·json
钊兵2 小时前
数据库驱动免费下载(Oracle、Mysql、达梦、Postgresql)
数据库·mysql·postgresql·oracle·达梦·驱动
lllsure4 小时前
Linux 实用指令
linux·物联网
隔壁老王1564 小时前
mysql实时同步到es
数据库·mysql·elasticsearch
疯狂吧小飞牛4 小时前
正则表达式特殊字符
正则表达式
White graces4 小时前
正则表达式效验邮箱格式, 手机号格式, 密码长度
前端·spring boot·spring·正则表达式·java-ee·maven·intellij-idea
astragin4 小时前
正则表达式常用记录
正则表达式
努力的小T4 小时前
使用 Docker 部署 Apache Spark 集群教程
linux·运维·服务器·docker·容器·spark·云计算
Nerd Nirvana5 小时前
OpenSSL crt & key (生成一套用于TLS双向认证的证书密钥)
linux·ssl·shell·认证·加密·tls·oepnssl