shell 里常用命令 sort,uniq,tr,dos2unix,cut,eval

shell 里常用命令 sort,uniq,tr,dos2unix,cut,eval


一:sort 排序

sort 命令 ------以行位单位,对文件内容进行排序,也可以根据不同的数据类型来排序。默认按照首字母顺序排序


1.格式

sort [选项] 参数

cat file | sort 选项


2.常用选项

常用选项 释义
-f 忽略大小写,会将小写字母都转换为大写字母来进行比较
-b 忽略每行前面的空格
-n 按照数字进行排序
-r 反向排序
-u 等同于uniq ,表示相同的数据仅显示一行
-t 指定字段分隔符,默认是哦那个[Tab]键分隔
-k 指定排序字段
-o 将排序后的结果转存至指定文件按

3,示例

image-20210723082802392

image-20210723083458730

image-20210723090412002

image-20210723083845781


二: uniq 去重

uniq 命令,用于报告或者忽略文件中连续的 重复行,鲳鱼sort 命令结合使用

2.1 格式

uniq [选项] 参数

cat file | uniq 选项

2.2 常用选项:

常用选项 释义·
-c 进行计数,并删除文件中重复出现的行
-d 仅显示连续的重复的行
-u 仅显示出现一次的行

2.3 示例

image-20210726083737765

image-20210726083954508

image-20210726084154305


三:字符转换命令 tr

常用来对来自标椎输入的字符进行替换,压缩,删除

3.1 格式

tr [选项] [参数]

cat file | tr [选项]


3.2 常用选项及参数

选项 释义
-c 保留字符集1的字符 ,其他字符(包括换行符\n)用字符集2替换
-d 删除所有属于字符集1 的字符
-s 将重复出现的字符压缩为一个字符串,用字符集2 替换字符集1、
-t 字符集2 替换字符集1, 不加选选项同结果

参数

字符集1:

  • 指定要转换或删除的原字符集。当执行转换操作时,必须使用参数”字符集2“指定转换操作时,必须使用参数”字符集2“指定转换的目标字符集。但执行删除操作时,不需要参数”字符集2“

字符集2:

  • 指定要转换成的目标字符集

3.4 示例

image-20210726085736794


四:转换格式 dos2unix

windos文件无法在linux 中直接使用。windos 文件使用 " \r\n"

4.1 下载软件 dos2unix.x86_64

yum -y install dos2unix.x86_64

4.2 使用格式

dos2unix 文件

image-20210726095018833

image-20210726095154967


五: 显示和删除行指定部分 cut

5.1 格式

cut 选项 参数

cat file | cut 选项

5.2 常用选项

选项 释义
-b 仅显示行中指定直接范围的内容以字节为单位进行分割,
-c 以字符为单位进行分割 , 仅显示行中指定范围的字符
-d 自定义分隔符,默认为制表符”TAB”
-f 显示指定字段的内容 , 与-d一起使用
-n 取消分割多字节字符
--complement 用于排除所指定的字段
--output-delimiter 更改输出的内容的分隔符

5.3 示例

image-20210726100415862


image-20210726100714863

image-20210726101024569

image-20210726101313018


六:eval 命令

命令字前,加上eval 时,shell 就会在执行命令之前扫描它两次。eval 命令将首先会先扫描命令,进行所有的置换, 然后再执行该命令。使用与那些一次扫描无法实现其功能的变量。改命令对变量进行两次扫描.

image-20210726101857638

image-20210726102131236

posted @   知己一语  阅读(169)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示