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
相关推荐
我爱学习好爱好爱17 分钟前
Ansible 常用模块详解:yum、service/systemd、copy实战
linux·服务器·ansible
沪漂阿龙33 分钟前
别再让数据库“吃”脏数据了!一文讲透MySQL约束,从入门到精通
数据库·mysql
papaofdoudou37 分钟前
LINUX VFIO被IOMMUFD取代
linux·运维·服务器
skiy1 小时前
java与mysql连接 使用mysql-connector-java连接msql
java·开发语言·mysql
平生不喜凡桃李1 小时前
浅谈 Linux 中 namespace 相关系统调用
java·linux·服务器
YMWM_2 小时前
【问题】thor上的cubLas
linux·python·thor
杨云龙UP3 小时前
mysqldump逻辑备份文件恢复总结:全库恢复、单库恢复,一篇讲明白
linux·运维·服务器·数据库·mysql·adb
舰长1153 小时前
linux系统服务器加固1、中风险 未设置登录失败处理功能和登录连接超时处理功能。2、中风险 未限制默认账户的访问权限。3、中风险 未实现管理用户的权限分离。
linux·运维·服务器
ybwycx3 小时前
mysql重置root密码(适用于5.7和8.0)
数据库·mysql·adb
mounter6253 小时前
Linux 7.0 重磅更新:详解 nullfs 如何重塑根文件系统挂载与内核线程隔离
linux·运维·服务器·kernel