目录
sort排序工具
依据不同的数据类型进行排序
·字符排序
·数字排序
语法格式
sort [选项] 参数
常用选项
| -f | 忽略大小写 |
|---|---|
| -b | 忽略每行前面的空格 |
| -M | 按照每月份进行排序 |
| -n | 按照数字进行排序 |
| -r | 反向排序 |
| -u | 等同于uniq,表示相同数据仅显示一行 |
| -t | 指定分隔符,默认使用[tab]键分隔 |
| -o <输出文件> | 将排序后的结果转存至指定文件 |
| -k | 指定排序区域 |
示例
以冒号分隔(降序)
[root@localhost ~]# cat /etc/passwd | head -n 5| cut -d ":" -f 1,3 | sort -nr -t: -k2
lp:4
adm:3
daemon:2
bin:1
root:0
[root@localhost ~]#
不加任何选项默认按第一列升序,字母的话就是从a到z由上而下显示
[root@localhost ~]# cat /etc/passwd | head -n 5| cut -d ":" -f 1,3 | sort
adm:3
bin:1
daemon:2
lp:4
root:0
cut列截取工具
| -b | 按字节截取 |
|---|---|
| -c | 按字符截取,常用于中文 |
| -d | 指定以什么为分隔符截取,默认为制表符 |
| -f | 通常和-d一起 |
示例
窃取每列开头
[root@localhost ~]# cat /etc/passwd | head | cut -b 1
r
b
d
a
l
s
s
h
m
o
[root@localhost ~]#
uniq去重工具
用于报告或者忽略文件中的重复行
一般与sort命令结合使用
语法
uniq[选项] 参数
常用选项
| -c | 进行计数 |
|---|---|
| -d | 仅显示重复行 |
| -u | 仅显示出现一次的行 |
示例
去除重复行
[root@localhost ~]# cat test
aaa
bbb
bbb
ccc
ddd
ddd
abc
abc
ddd
abc
[root@localhost ~]# uniq test
aaa
bbb
ccc
ddd
abc
ddd
abc
[root@localhost ~]#
结合sort使用(sort -n)
[root@localhost ~]# sort test | uniq
aaa
abc
bbb
ccc
ddd
[root@localhost ~]#
tar
与来自标准输入的字符进行替换、压缩和删除
语法
tar [选项] 参数
常用选项
| -c | 取代所有不属于第一个字符集的字符 |
|---|---|
| -d | 删除所有属于第一个字符集的字符 |
| -s | 吧连续重复的字符以单独一个字符表示 |
| -t | 先删除第一个字符集较第二个字符集多出的字符 |
示例
把a替换为A
[root@localhost ~]# cat test | tr 'a' 'A'
AAA
bbb
bbb
ccc
ddd
ddd
Abc
Abc
ddd
Abc
[root@localhost ~]#
对a去重
[root@localhost ~]# cat test | tr -s 'a'
a
bbb
bbb
ccc
ddd
ddd
abc
abc
ddd
abc
[root@localhost ~]#
本文详细介绍了Linux中sort、cut、uniq和tar四个命令的使用方法及其示例。sort用于根据字符或数字进行排序,支持忽略大小写、按月份排序等;cut用于按指定分隔符截取文件内容;uniq用于去除重复行,可与sort结合使用;tar则展示了如何进行字符替换和去重操作。这些工具在日常Linux系统管理和文件处理中非常实用。
688

被折叠的 条评论
为什么被折叠?



