【linux】补充:高效处理文本的命令学习(tr、uniq、sort、cut)

目录

一、tr——转换、压缩、删除

1、tr -s “分隔符” (指定压缩连续的内容)

2、tr -d 想要删除的东西

​编辑 3、tr -t 内容1 内容2 将内容1全部转换为内容2(字符数需要一一对应)

二、cut——快速剪裁命令

三、uniq——去重

四、sort——排序

4.1单独的sort,仅按照首字符排序

4.2 sort的集合用法,cat passwd|sort -t ":" -k 4 -n

4.3sort的-o用法,将日志访问量前10的统计出来,并保存为name.txt

总结


一、tr——转换、压缩、删除

tr命令含义举例
-s指定压缩连续的符号tr -s “ ”
-d指定删除所有的符号tr -d %
-dcdc组合,指定删除的取反 
-t  内容1' ‘内容2’将文章内所有的内容1转换为内容2tr -t 'a-z' 'A-Z'

1、tr -s “分隔符” (指定压缩连续的内容)

2、tr -d 想要删除的东西

 3、tr -t 内容1 内容2 将内容1全部转换为内容2(字符数需要一一对应)

4、tr -dc %

 

生成一个5位数的随机密码
[root@localhost opt]#cat /dev/random |tr -dc [[:alnum:]]|head -c 5

二、cut——快速剪裁命令

cut快速截取列
-d指定分隔符(这里只能识别单个分隔符,常与tr -s命令结合)
-f #指定提取的哪一列

三、uniq——去重

uniq去重统计
-c连续去重统计
-u没有连续重复的行显示出来(与下面互为补集)
-d把连续重复2次以上的,显示出来,显示的时候只表示一行

uniq -c一般与sort命令结合使用,用于先排序集合所有相同的行,然后连续去重统计,再排序获取重复的次数

 

四、sort——排序

sort排序
-n以数字的形式
-r取反
-o<输出文件名>指定另保存为文件,相当于重定向输入
-t指定分隔符
-k#指定按哪一列排序

4.1单独的sort,仅按照首字符排序

经验总结,不一定对,数字在前,相同字母,大写字母优先小写字母,忽略空格

4.2 sort的集合用法,cat passwd|sort -t ":" -k 4 -n

4.3sort的-o用法,将日志访问量前10的统计出来,并保存为name.txt

 

总结

命令名称用法选项集合
sort排序-t(指定分隔符),-k(指定列),-n(以数字大小排序),-r(排序取反),-o(输出文件)
uniq去重,统计-c(去重统计),-d(只显示连续重复两次以上的行),-u(只显示没有连续出现的行)
tr压缩,转换,删除-s(指定压缩内容),-d(指定删除内容)-dc(与-d取反,也可以理解为留下指定内容),-t(指定转换的内容)
cut提取列-d(指定分隔符),-f(指定提取的列)
需要理解记忆:cat 某日志 |tr -s " "|cut -d " " -f 3|sort|uniq|sort -nr|head

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/163615.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MongoDB之索引和聚合

文章目录 一、索引1、说明2、原理3、相关操作3.1、创建索引3.2、查看集合索引3.3、查看集合索引大小3.4、删除集合所有索引&#xff08;不包含_id索引&#xff09;3.5、删除集合指定索引 4、复合索引 二、聚合1、说明2、使用 总结 一、索引 1、说明 索引通常能够极大的提高查…

Python3.7+PyQt5 pyuic5将.ui文件转换为.py文件、Python读取配置文件、生成日志

1.实际开发项目时&#xff0c;是使用Qt Designer来设计UI界面&#xff0c;得到一个.ui的文件&#xff0c;然后利用PyQt5安装时自带的工具pyuic5将.ui文件转换为.py文件&#xff1a; pyuic5 -o mywindow.py mywindow.ui #先是py文件名&#xff0c;再是ui文件名样式图 QT5 UI&am…

端口号大揭秘:网络世界的“门牌号”有多牛?

大家好&#xff0c;今天我们来聊一聊网络中的端口号。如果你以为端口号只是冷冰冰的数字&#xff0c;那你就大错特错了。端口号&#xff0c;这些看似枯燥的数字背后&#xff0c;隐藏着一个个生动的故事。 1. 80/tcp - HTTP&#xff1a;数字版的美食街 首先&#xff0c;让我们迈…

6.9平衡二叉树(LC110-E)

绝对值函数&#xff1a;abs() 算法&#xff1a; 高度和深度的区别&#xff1a; 节点的高度&#xff1a;节点到叶子节点的距离&#xff08;从下往上&#xff09; 节点的深度&#xff1a;节点到根节点的距离&#xff08;从上往下&#xff09; 逻辑&#xff1a;一个平衡二叉树…

对象与this

作者简介&#xff1a;大家好&#xff0c;我是smart哥&#xff0c;前中兴通讯、美团架构师&#xff0c;现某互联网公司CTO 联系qq&#xff1a;184480602&#xff0c;加我进群&#xff0c;大家一起学习&#xff0c;一起进步&#xff0c;一起对抗互联网寒冬 最近想再聊聊Java的对象…

JVM 调优指南

文章目录 为什么要学 JVM一、JVM 整体布局二、Class 文件规范三、类加载模块四、执行引擎五、GC 垃圾回收1 、JVM内存布局2 、 JVM 有哪些主要的垃圾回收器&#xff1f;3 、分代垃圾回收工作机制 六、对 JVM 进行调优的基础思路七、 GC 情况分析实例 JVM调优指南 -- 楼兰 ​ JV…

系列七、GC垃圾回收【四大垃圾算法-标记压缩算法】

一、原理 在整理压缩阶段&#xff0c;不再对标记的对象回收&#xff0c;而是通过所有存活对象都向一端移动。可以看到&#xff0c;标记的存活对象将会被整理&#xff0c;按照内存地址依次排列。如此一来&#xff0c;当我们需要给新对象分配内存时&#xff0c;JVM只需要持有一个…

永久关机windows系统自动更新

1、打开cmd执行 reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" /v FlightSettingsMaxPauseDays /t reg_dword /d 3000 /f2、设置&#xff0c;打开windows更新高级选项 修改暂停日期&#xff0c;可长达十年。 3、你小子

解锁数据安全之门:探秘迅软DSE的文件权限控制功能

企业管理者在进行数据安全管控时通常只关注到文件的加密方式&#xff0c;却忽略了以下问题&#xff1a;对于企业内部文档&#xff0c;根据其所承载的涉密程度不同&#xff0c;重要程度也不相同&#xff0c;需要由不同涉密等级的的人员进行处理&#xff0c;这就需要对涉密文档和…

战神传奇【我本沉默精修版】win服务端+双端+充值后台+架设教程

搭建资源下载:战神传奇【我本沉默精修版】win服务端双端充值后台架设教程-海盗空间

详解Java设计模式之职责链模式

原文&#xff1a;详解Java设计模式之职责链模式_java_脚本之家 责任链模式是一种行为设计模式&#xff0c;使多个对象都有机会处理请求&#xff0c;从而避免请求的发送者和接收者之间的耦合关系&#xff0c;文中通过代码示例给大家介绍的非常详细,需要的朋友可以参考下 − 目…

TG Pro v2.87(mac温度风扇速度控制工具)

TG Pro 是适用于 macOS 的温度和风扇速度控制工具&#xff0c;可让您监控 Mac 组件&#xff08;例如 CPU 和 GPU&#xff09;的温度和风扇速度。如果您担心 Mac 过热或想要手动调整风扇速度以降低噪音水平&#xff0c;这将特别有用。 除了温度和风扇监控&#xff0c;TG Pro 还…

基于截图页面生成前端项目

前两天&#xff0c;在群里看见一个视频&#xff0c;视频中&#xff0c;作者截图twitter首页&#xff0c;然后使用截图直接生成与截图布局非常相近的前端项目&#xff0c;效果还是比较惊艳的。 今天陪老婆回老家&#xff0c;路上clone这个项目的代码到本地&#xff0c;学习了一下…

回归预测 | Matlab实现HPO-ELM猎食者算法优化极限学习机的数据回归预测

回归预测 | Matlab实现HPO-ELM猎食者算法优化极限学习机的数据回归预测 目录 回归预测 | Matlab实现HPO-ELM猎食者算法优化极限学习机的数据回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 Matlab实现HPO-ELM猎食者算法优化极限学习机的数据回归预测&#xff08;…

Bert学习笔记(简单入门版)

目 录 一、基础架构 二、输入部分 三、预训练&#xff1a;MLMNSP 3.1 MLM&#xff1a;掩码语言模型 3.1.1 mask模型缺点 3.1.2 mask的概率问题 3.1.3 mask代码实践 3.2 NSP 四、如何微调Bert 五、如何提升BERT下游任务表现 5.1 一般做法 5.2 如何在相同领域数据中进…

037、目标检测-算法速览

之——常用算法速览 目录 之——常用算法速览 杂谈 正文 1.区域卷积神经网络 - R-CNN 2.单发多框检测SSD&#xff0c;single shot detection 3.yolo 杂谈 快速过一下目标检测的各类算法。 正文 1.区域卷积神经网络 - R-CNN region_based CNN&#xff0c;奠基性的工作。…

[C++历练之路]vector的介绍以及底层模拟实现

W...Y的主页 &#x1f60a; 代码仓库分享 &#x1f495; &#x1f354;前言&#xff1a; 我们学习了STL中的string以及其所有重要接口并进行了模拟实现&#xff0c;但是STL中包含的内容不止于此。学习了string之后继续学习STL中的vector&#xff0c;学习成本会大大降低&#…

CentOS7 安装mysql8(离线安装)postgresql14(在线安装)

注&#xff1a;linux系统为vmware虚拟机&#xff0c;和真实工作环境可能有出入&#xff0c;不过正因如此我暴露了NAT转出的IP也没什么大碍 引言 postgresql与mysql目前都是非常受人欢迎的两大数据库&#xff0c;其各有各的优势&#xff0c;初学者先使用简单一张图来说明两者区…

【算法挨揍日记】day31——673. 最长递增子序列的个数、646. 最长数对链

673. 最长递增子序列的个数 673. 最长递增子序列的个数 题目解析&#xff1a; 给定一个未排序的整数数组 nums &#xff0c; 返回最长递增子序列的个数 。 注意 这个数列必须是 严格 递增的。 解题思路&#xff1a; 算法思路&#xff1a; 1. 状态表⽰&#xff1a; 先尝试…