Linux中文本处理命令

本文详细介绍了Linux下常用的文本处理命令,包括sort、uniq、tr、cut、split和paste,涵盖了命令的语法格式、常用选项及示例,帮助理解如何进行文件排序、去重、字符替换、字段截取和文件拆分等操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

sort命令

sort命令——以行为单位对文件内容进行排序,也可以根据不同的数据类型来排序
比较原则是从首字符向后,依次按ASCII码进行比较,最后将他们按升序输出。
默认首字母排序

语法格式:

    sort [选项] 参数
    cat file |sort 选项

常用选项:

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

示例:

文件1.txt内容

 1、默认排序,即不加选项,默认按首字母排序

2、-n ,按照数字排序,默认排序为升序

3、-r ,倒序。默认为升序,后面再加上-r后,排序是降序

 

 4、-u,合并重复的行,只显示一次重复的行,不会多次显示

tip:-u -n -r合起来与分开的作用是一样的

5、 -t,指定分隔符。-k,指定对第几个字段进行排序

uniq命令

uniq命令——用于报告或者忽略文件中连续的重复行,常与sort连用
    去重

语法格式:

    uniq [选项] 参数
    cat file |uniq 选项

常用选项:

-c:进行计数,并删除文件中重复出现的行
-d:仅显示连续的重复行
-u:仅显示出现一次的行

示例

1、uniq不加任何选项,作用只有对连续且重复的进行去重

 2、-c,显示连续重复行出现的次数,并合并重复行

3、-c,与sort命令结合,统计相同行重复出现的次数,包括不连续的重复行

4、-u,显示仅出现过一次的行(但包括不连续的重复行)

tr命令

tr命令——常用来对来自标准输入的字符进行替换、压缩和删除

语法格式:

tr [选项] [参数]

常用选项:

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

示例

1、将所有小写字母替换为大写  

2、将小写a替换为大写A  

3、 将小写a替换为大写A

4、将.替换为空格

 

 5、将abc替换成123

6、 替换的参数比原参数多出的字符忽略

7、原参数如果比替换参数多出字符,则用替换参数的最后一个字符替换

 

cut命令

cut命令——截取字段或字符串,用于显示行中的指定部分,删除文件中指定字段

语法格式

cut [选项] 文件名

常用选项:

-d:分隔符,按照指定分隔符分割列。与 -f 一起使用
-f:依据 -d 的分隔字符将一段信息分割成为数段,用 -f 取出第几段的意思(列号,提取第几列)
-c:以字符 (characters) 的单位取出固定字符区间
-b:以字节为单位进行分割

split命令

split命令——Linux下将下一个大的文件拆分成若干个小文件

语法格式:

split 选项 参数 原始文件 拆分后文件名前缀

常用选项:

-l:以行数拆分
-b:以大小拆分

split -l 50 /etc/passwd passwd     #以50行对文件进行拆分,最后一个文件的行数没有50行以实际行数进行分配

paste命令

paste命令——用于合并的文件列
paste [-s] [-d <间隔字符>] 文件

语法格式:

paste [选项]

常用选项:

-d<间隔字符>:用指定的间隔字符取代制表符
-s:把多行内容合并为一行进行显示

eval命令

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

示例1:
echo "hello world" > file
myfile="cat file"
echo $myfile
cval $myfile

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值