linux常见命令(五)
用于文本内容处理的相关命令
- sort
- uniq
- cut
- comm
- diff
sort:对文件中数据进行排序,并将结果显示在标准输出上
命令语法:sort [选项] [文件]
| 选项 | 选项含义 |
|---|---|
| -m | 如果给定文件已排好序,那么合并文件 |
| -u | 对排序后认为相同的行只留其中一行 |
| -d | 按字典顺序排序,比较时仅字母、数字、空格和制表符有意义 |
| -f | 将小写字母与大写字母同等对待 |
| -r | 按逆序输出排序结果 |
| -c | 检查给定文件是否已经排好序,如果他们没有排好序,则打印一个出错信息,并以状态值1退出 |
例子:将文件cs.log数据排序,并显示在屏幕上
[root@localhost ~]# sort cs.log
读取文件cs.log内容,以倒序排序该文件并显示在屏幕上
[root@localhost ~]# sort -r cs.log
uniq:将重复行从输出文件中删除
命令语法:uniq [选项] [文件]
| 选项 | 选项含义 |
|---|---|
| -c | 显示输出中在每行行首加上本行在文件中出现的次数 |
| -d | 只输出重复的行 |
| -D | 显示所有重复的行 |
| -u | 只显示文件不重复的行 |
| -s k | 比较时跳过钱K个字符,K是数字 |
| -w K | 对每行第K个字符以后的内容不做对照,K是数字 |
| -f K | 比较时跳过前K列,K是数字 |
| -i | 在比较的时候不区分大小写 |
例子:查看文件cs.log中不重复行数据的内容
[root@localhost ~]# cat cs.log
wewe
wewe
uoij
124
[root@localhost ~]# uniq -u cs.log
uoij
124
cut:从文件每行中显示出选定的字节、字符或字段(域)
命令语法:cut [选项] [文件]
| 选项 | 选项含义 |
|---|---|
| -b<列表> | 只选中指定的这些字节 |
| -c<列表> | 只选中指定的这些字符 |
| -d<分界符> | 使用指定分解符代替制表符昨晚区域分界 |
| -f<列表> | 指定文件中设想被定界符(缺省情况下为制表符)隔开的字段的列表 |
| -n | 取消分割多字节字符。仅和-b选项一起使用。如果字符的最后一个字节落在有-b选项的列表参数指示的范围之内,该字符将被写出;否则改字符将被排除 |
| -s | 不打印没有包含分界符的行 |
例子:显示文件/etc/passwd中的用户登录名和用户全称字段,这是第1个和第5个字段,由冒号隔开。
[root@localhost ~]# cut -f 1,5 -d: /etc/passwd
root:root
bin:bin
daemon:daemon
adm:adm
lp:lp
sync:sync
shutdown:shutdown
halt:halt
mail:mail
operator:operator
games:games
ftp:FTP User
nobody:Nobody
systemd-network:systemd Network Management
dbus:System message bus
polkitd:User for polkitd
sshd:Privilege-separated SSH
postfix:
chrony:
li:
comm:逐行比较两个已排过序的文件
命令语法:comm [选项] [文件1] [文件2]
| 选项 | 选项含义 |
|---|---|
| -1 | 不输出文件1特有的行 |
| -2 | 不输出文件2特有的行 |
| -3 | 不输出文件3特有的行 |
例子:比较文件file1和file2的文件内容
[root@localhost ~]# cat file1
a
aa
[root@localhost ~]# cat file2
a
bb
[root@localhost ~]# comm file1 file2
a
aa
bb
comm: file 2 is not in sorted order
比较文件file1和file2,只显示文件file1和file2中相同行的数据内容
[root@localhost ~]# comm -12 file1 file2
a
comm: file 2 is not in sorted order
diff:逐个比较两个文本文件,列出其不同之处
命令语法:diff [选项] [文件1] [文件2]
| 选项 | 选项含义 |
|---|---|
| -b | 忽略行尾的空格,二字符串中的一个或多个空格符都视为相等 |
| -c | 使用上下文输出格式 |
| -r | 当比较目录时,递归比较任何找到的子目录 |
| -y | 以两列并排格式输出 |
| -W<n> | 在并列格式输出时,使用指定的列宽,n代表数字 |
| -u | 使用通用的输出格式 |
| -i | 文件内容中忽略大小写差异 |
| -w | 忽略所有的空白 |
| -a | 所有的文件都视为文本文件来逐行比较 |
| -B | 忽略插入删除空行引起的变化 |
| -q | 只比较简短的输出文件是否不同 |
| -s | 当两个文件相同时报告 |
| -t | 在输出时扩展tab为空格,保护输入文件的tab对齐方式 |
| -x<模式> | 排除匹配模式的文件 |
| -X<文件> | 比较目录的时候,忽略和目录中与任何包含在指定文件的样式相配的文件和目录 |
例子:比较file1和file2文件,列出其不同之处
[root@localhost ~]# cat file1
a
aa
[root@localhost ~]# cat file2
a
bb
[root@localhost ~]# diff file1 file2
2c2,3
< aa
---
> bb
>
摘自:《Linux实用教程》人民邮电出版社出版发行 於岳编著
linux常见命令(五)的更多相关文章
- 2 . Linux常见命令
Linux常见命令格式: 命令名称 选项 参数 ls -alh 文件/目录 --all #ls 显示当前目录内容 #ls -l 显示文件详细信息 #ls -hl h已常见单位显示文件大小 k M G# ...
- Linux常见命令(四)——mkdir
今天我们来介绍第四个命令:mkdir.mkdir (Make Directory 创建目录): 若指定目录不存在则创建目录.在创建目录时,要求创建目录的用户具有写权限,并应保证新建的目录没有重名. 用 ...
- 嵌入式Linux开发教程:Linux常见命令(上篇)
摘要:这是对周立功编著的<嵌入式Linux开发教程>的第7期连载.本期刊载内容有关LinuxLinux常见命令中的导航命令.目录命令和文件命令.下一期将连载网络操作命令.安装卸载文件系统等 ...
- 一个linux常见命令的列表
这是一个linux常见命令的列表. 那些有• 标记的条目,你可以直接拷贝到终端上而不需要任何修改,因此你最好开一个终端边读边剪切&拷贝. 所有的命令已在Fedora和Ubuntu下做了测试 命 ...
- Linux常见命令(五)——rmdir
前 言 JRedu 今天我们来介绍第五个命令:rmdir . 命令英文原意:remove empty directories 命令用途: rmdir:删除空目录,非空的目录不能删除 本章内容将详 ...
- 第二天 Linux常见命令
复习: 判断题 1.fedora.redhat.Centos.suse.ubuntu.都是常见的linux 2./分区.swap分区./boot分区都是linux的必须分区 3./dev/sda5在l ...
- Linux常见命令(二)
随着Linux应用的扩展许多同学开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起.虽然Linux桌面应用发展很快,但是命令在Linux中依然有很强的生命力.Li ...
- Linux常见命令(三)
今天我们来介绍第三个命令:pwd. Linux中用 pwd 命令来查看”当前工作目录“的完整路径. 简单得说,每当你在终端进行操作时,你都会有一个当前工作目录. 在不太确定当前位置时,就会使用pwd来 ...
- Linux 常见命令说明
目前由于自己接触到的是 windows 的操作系统,所以会经常使用 git bash 来提交代码到 github上. git bash 是 windows 下模拟 Linux 的命令行工具. 在此总结 ...
- linux 常见命令--系统信息部分
head -n 1 /etc/issue #查看操作系统 cat /etc/redhat-release #查看linux系统版本 cat /proc/meminfo |grep MemTot ...
随机推荐
- 使用CosmosDB进行大规模数据的实时数据处理和流式传输
目录 使用 Cosmos DB 进行大规模数据的实时数据处理和流式传输 背景介绍 文章目的 目标受众 技术原理及概念 基本概念解释 技术原理介绍 相关技术比较 实现步骤与流程 准备工作:环境配置与依赖 ...
- Java 字符串反转,举例:键盘录入”abc”输出结果:”cba”
代码如下: public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out. ...
- 《HelloGitHub》第 87 期
兴趣是最好的老师,HelloGitHub 让你对编程感兴趣! 简介 HelloGitHub 分享 GitHub 上有趣.入门级的开源项目. https://github.com/521xueweiha ...
- 自动设置IP地址和自动获取IP地址bat批处理文件
自动设置IP地址.bat Echo offecho 手动设置IP地址....Netsh interface IP Set Addr "本地连接" Static 192.168.1 ...
- 打包 IPA processing failed 失败
查看报错日志:有些SDK含有x86_64架构,移除即可 1. cd 该库SDK路径下 2.执行 lipo -remove x86_64 BaiduTraceSDK -o BaiduTraceSDK 解 ...
- Asp-Net-Core学习笔记:单元测试和集成测试
前言 我在使用 AspNetCore 的这段时间内,看了很多开源项目和博客,发现各种 .Net 体系的新技术很多人都有关注和使用,但却很少有人关注测试. 测试是软件生命周期中的一个非常重要的阶段,对于 ...
- 2023年郑州轻工业大学校赛邀请赛jc
比赛时,jxh和myh从头开始看题,我拿着试题册去找签到,很快他们签上了一个数学题,我跟他们说兔子和飞镖可以写,刚开始飞镖这个题我先wa了一次,因为刚开始的思路少考虑了情况,我们队后来改的挺乱,jxh ...
- C语言基础-基础指针
文章目录 指针 前言 1.什么是指针 2.指针的使用 (1)指针的定义 (2)指针的赋值 (3)指针类型 (4)如何使用指针 3.野指针 (1)导致野指针的原因 ① 未初始化指针 ②指针越界访问 ③指 ...
- Oracle使用SQL截取某字符串
很多小伙伴在使用Oracle的时候,想通过SQL来提取根据某一字符串截取来获得的字符串,他苦于对SQL不是很熟悉,但是现在你可以放心啦,现在先恭喜你找到了答案.因为在这里我已经为你写好了相关的函数以及 ...
- Maven资源导出问题所需配置
<!--在build中配置resources,来防止我们资源导出失败的问题--> <build> <resources> <resource> < ...