shell之常用工具(cut、sort、uniq、tr)

article/2025/11/7 20:47:18

文章目录

  • 一、列截取工具-cut
    • 1、cut概述
    • 2、常用选项
    • 3、案例演示
  • 二、排序工具-sort
    • 1、sort概述
    • 2、常用选项
    • 3、案例演示
  • 三、去重工具-uniq
    • 1、uniq概述
    • 2、uniq的常用选项
    • 3、案例演示
  • 四、修改工具-tr
    • 1、 tr概述
    • 2、tr的常用选项
    • 3、案例演示
  • 五、面试题
  • 六、总结

一、列截取工具-cut

1、cut概述

cut命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。

如果不指定file 参数,cut命令将读取标准输入。必须指定 -b(字节) 、-c(字符) 或 -f(第几列) 标志之一。

字符和字节的区别

  • 字节(byte) : 是计量单位,表示数据量多少,是计算机信息技术用于计量存储容量的一种计量单位,通常情况下1字节等于8位
  • 字符(character) :计算机中使用的字母、数字、字和符号
  • 一般在英文状态下,一个字母或字符占用一个字节, 一个汉字占用两个字节

2、常用选项

格式:cut [选项] [文件路径]
选项功能
-b按字节截取
-c按字符截取,常用于中文
-d指定以什么为分割符截取,默认为制表符
-f通常和-d一起使用(表示截取第几列)

3、案例演示

案例1:截取/etc/passwd 文件的中root用户的第7列(-d -f)

在这里插入图片描述

案例2:按字节截取(-b)
在这里插入图片描述
在这里插入图片描述

案例:按字符截取(-c)

在这里插入图片描述
在这里插入图片描述

二、排序工具-sort

1、sort概述

是一个以行为单位对文件内容进行排序的工具,也可以根据不同的数据类型来排序。

例如:数据和字符的排序就不一样

2、常用选项

格式:sort [选项] [文件路径]
选项功能
-t指定分隔符,默认使用[Tab]键或空格分隔
-k指定排序区域,哪个区间排序
-n按照数字进行排序,默认是以字母形式排序
-u等同于uniq,表示相同的数据仅显示一行,注意:如果行尾有空格就去重就不成功
-r反向排序,默认升序,
-o将排序的结果转存至指定文件

3、案例演示

案例1:不加任何选项,默认按照第一列升序,字母的话就是从a到z

在这里插入图片描述

案例2:指定分隔符(-t),指定排序的列(-k),升序排列

在这里插入图片描述

案例3:指定分隔符,指定排序的列,降序排列(-r)

在这里插入图片描述

案例4:指定分隔符,指定排序的列,降序排列,并将排序后的内容输入到/home/ydq/ydq.txt中(-o)

在这里插入图片描述

案例5:去掉文件中重复的行(-u),(重复的行可以是不连续的)

在这里插入图片描述

三、去重工具-uniq

1、uniq概述

主要用于去除连续的重复行

注意: 是连续的行。所以通常和sort结合使用,先排序使之变成连续的行, 再执行去重操作,否则不连续的重复行它不能去重。

2、uniq的常用选项

格式:uniq  [选项]  文件路径

不加选项的话,是直接去掉重复的行。

选项功能
-c统计重复的行(在它前面标上重复的次数)
-d仅显示重复的行
-u仅显示出现一次的行(不重复的行)

3、案例演示

案例1:统计连续重复的行(-c)
在这里插入图片描述

案例2:显示连续重复的行(-d),显示不连续重复的行(-u)

在这里插入图片描述

案例3:查看当前登录用户,去掉重复的行

在这里插入图片描述

案例4:统计历史登录过系统的用户

在这里插入图片描述

四、修改工具-tr

转换或删除文件中的字符

1、 tr概述

  • 可以用一个字符来替换另一个字符,

  • 或者可以完全除去一些字符

  • 还可以用来去掉重复的字符

  • 从标准输入中替换,缩减和注释或删除字符,并将结果写到标准输出

2、tr的常用选项

从标准输入中替换、缩减和/或删除字符,并将结果写到标准输出。

格式: tr  [选项]   '字符集1'  '字符集2'
选项功能
-d删除字符
-s删除所有重复出现的字符,只保留一个(如果是空行,全部去掉)

3、案例演示

案例1:将所有小写的改成大写
在这里插入图片描述

案例2:替换字母,一一对应替换
在这里插入图片描述

案例3:替换字符,不是一一对应
在这里插入图片描述

案例4:将字符替换成特殊字符

在这里插入图片描述

案例5:删除字符(-d)

在这里插入图片描述

在这里插入图片描述

案例6:对字符去重(-s)

在这里插入图片描述

案例7:去掉所有的空行

在这里插入图片描述

五、面试题

案例1:统计当前连接主机数

在这里插入图片描述

案例2:统计当前主机的连接状态

在这里插入图片描述

六、总结

cut :表示截取列

可以按照字符(-c)按照字节(-b)或者根据分割符(-d)来选取要截取的列(-f)。

sort:表示排序

  • 默认以字母排序,数字排序需要加选项(-n),反向排序需要加选项(-r)。
  • 还可以选择按照哪一列进行排序,需要先定义分割符(-t),然后根据分割符去选取对应的列(-k),最后进行排序。
  • 可以将排序后的内容输入到其它文件,使用选项(-o)可以指定需要注入的文件名。
  • 还可以将进行去重(-u),可以是不连续的行,进行去重。

uniq:表示去重

  • 主要注意的是它必须是连续的行,不然无法去重
  • 可以根据选项,选择显示不重复的行(-u)
  • 还可以选择显示重复的行(-d)
  • 还可以统计连续重复的数量(-c)

tr:表示修改字符

  • 可以修改对应的字符,按照字符对应一一修改,如果有重复的字符,它会按照最后一个字符对应的修改字符进行替换,如果对应的字符不够时,它会将修改的最后一个字符进替换。
  • 还可以进行删除(-d),删除文本中所对应的字符
  • 还可以进行去重(-s),但是去重的字符必须是连续在一起的两个字符(会保留其中一个),不然无法去重成功。

http://chatgpt.dhexx.cn/article/Hie6AS2E.shtml

相关文章

JDK配置环境变量+eclipse安装使用(保姆级教程)

一、下载JDK 访问Oracle官网下载最新版JDKJava Downloads | Oracle,也可点击此处下载我准备的安装包。 以Windows系统举例,选择Windows下的第二个(第一个为压缩包,第二个为安装程序,第三个是Windows Installee的数据包…

eclipse android环境搭建,Eclipse Android开发环境搭建教程

Eclipse Android开发环境搭建教程是本文要介绍的内容,主要是来了解并学习Eclipse Android环境搭建的过程,具体关于Eclipse Android内容的详解来看本文。 Eclipse Android开发准备: 1、javasdk 2、eclipsehttp://www.eclipse.org/downloads/ 3…

AWS Toolkit for Eclipse环境配置

最近,实验室的工作中涉及到了AWS,拟采用Java来实现。现在来整理一下相关配置过程。 配置过程 首先,我这里使用的是Eclipse Oxygen版本。AWS Toolkit for Eclipse的安装过程比较简单,在Eclipse的菜单栏点击“Help->Install New…

eclipse配置java环境_java环境搭建(Eclipse)

1.打开Eclipse官网 2.单击Download下方的灰色字Download Packages 3.单机图片中Eclipse IDE for Enterprise Java Developers 中的对应选项(windows 64-bit) 4.跳出窗口后点击橙色Download 5.解压下载下来的解压包 6.打开解压后文件夹中的eclipse.exe 7.如果出现该问题贼需要搭…

java web(eclipse)搭建环境

开发环境搭建: 一、搭建jdk环境:(配置环境变量,JAVA_HOME,PATH,CLASSPATH,JRE_HOME) a) 参考链接:https://jingyan.baidu.com/article/1974b28959d87ff4b0f7745c.html 二、下载解压eclipse:绿色…

eclipse的安装与环境配置

一,eclipse下载 地址:https://www.eclipse.org/downloads/ 一般浏览器都有翻译功能 二、有32位和64位的版本根据自己的需求下载,选下载的选下载量最多的下载。 1.下载完成后是压缩包解压 就可以直接使用 这样子eclipse就下载好了,接下来就…

Eclipse配置Android开发环境

Eclipse配置Android开发环境 环境变量的配置测试环境是否配置完毕 ADT插件的安装ADT的下载在线安装(未试成功)离线安装 ADT的使用 eclipse新建Android项目xml文件无法预览页面 在配置好环境的eclipse中安装Android SDK(Software Development …

Eclipse配置python环境全步骤

安装方法参考这一博主的文章,一开始选用第二、三种,都安装失败 eclipse配置python开发环境_如何在Eclipse中配置python开发环境_weixin_39827036的博客-CSDN博客 后面用第一种方法,还是在 Window-preferences 下没有找到 PyDev 然后看到这…

配置Eclipse环境变量

不管是eclipse还是MyEclipse 都需要配置环境变量,MyEclipse不配置好环境变量是不能用激活破解工具的 方法: (右键)我的电脑-(右键)“属性”-高级-环境变量,弹出Windows的“环境变量…

eclipse搭建mybatis的环境

1.首先创建一个web工程 2.导入mybatis的jar包 3.创建一个xxx.properties文件里面写 (1)我这里是mysql 8 如果是mysql5,driver就不一样 jdbc.drivercom.mysql.cj.jdbc.Driver jdbc.urljdbc:mysql://localhost:3306/mybbs?serverTimezoneAs…

Eclipse中配置python环境

1.首先将Eclipse下载完成 2.下载python模块,链接为(https://sourceforge.net/projects/pydev/files/pydev/)选择一个最新版本即可 3.之后得到python模块文件如下图,将两个文件夹复制一下 4.将两个文件夹内容复制到Eclipse的文件夹…

eclipse环境的搭建以及JDK的安装步骤详细

java开发环境:eclipse 可以从这里下载 链接:https://pan.baidu.com/s/1qNVUTB1-Wy4Tvbzvo3YxLA 提取码:ap5v 安装步骤如下: 从上链接获取压缩包下载到电脑之后,解压,此时的eclipse是打不开的,需…

Eclipse及Android环境配置

Eclipse及Android环境配置 1.资源 1.jdk官网 2.Eclipse 3.ADT插件 4.sdk 2.安装Jdk并配置Java环境 (1)安装jdk-8u65-windows-64位.exe **a、 为了方便后续操作,这里修改为C:Java\jdk1.8.0_65\ ** b、同时修改为java目录 c、直接关闭…

SAP Fiori开发工具——Eclipse环境搭建

SAP Fiori开发工具——Eclipse环境搭建 这里我们选择Eclipse Web的Mars版本进行下载。 进入Eclipse官网:Eclipse Downloads | The Eclipse Foundation 由于我们要下载老版本,所以点击“Download Packages”进去选择。 需要下载Eclipse Web版本&#xf…

eclipse环境变量的配置

第一步: 安装eclipse 本来可以直接百度下载eclipse软件安装即可,但是不知道什么原因,我的电脑始终安装不了,无奈之下,我下载了eclipse火星版,直接解压就可以用,文末有下载地址。 第二步&#…

Eclipse环境下配置Tomcat

第一步 1.首先打开eclipse,依次选择Windows->Preferences->Server>Installed JREs->Runtime Environments”选项。 2.点击Add 3.选择你所需要的版本 4.点击Next,地址填你所安装的地址,点击finish就完成了。 第二步(打…

Eclipse环境搭建-scala

在eclipse基础上搭建scala开发环境 1、首先,你需要去Scala的官网上载你需要的安装包,这里我下载了最新的2.11.8的msi包。 2、双击进行安装: 点击"Next" 选择"I accept the terms in the License Agreement"&#xff0c…

Eclipse的环境设置

目录 一、主题设置 二、字体设置 三、字符编码设置 四、JRE设置 五、代码智能提示设置 六、代码大括号的格式设置 七、黑色主题设置 1. 代码区域设置 2. 软件整体设置 3. 背景恢复 一、主题设置 Window > Preferences > General > Appearance 二、字体设置 …

Eclipse环境变量配置!

一:环境 win10jdk-8u131-windows-x64_8.0.1310.11 二:环境变量的配置 右击“我的电脑”—>“属性”—>进入系统页面,再点击“高级系统设置”进入“高级系统设置”后点击”高级 后“再点击“环境变量”如下图 此图是我已经配置好…

Eclipse的下载与安装以及JDK环境的配置

首先要想使用Eclipse进行java代码的编写,必须进行如下两步: eclipse的安装与配置:(1)下载,(2)安装,(3)配置JDK的安装与配置:&#xf…