写在前面:
最近在学习Linux命令,记录一下学习Linux常用命令的过程,方便以后复习。仅供参考,若有不当的地方,恳请指正。如果对你有帮助,欢迎点赞,关注,收藏,评论,谢谢。
1.paste命令 用于合并文件的行
1.1 paste 1.txt 2.txt 合并文件的行
1.2 使用自定义分隔符
如:paste -d, file1.txt file2.txt。
-d:"delimiter"(分隔符)。
1.3 处理多个文件
如: paste 1.txt 2.txt 3.txt。
每个文件的对应行将被合并在一起,并使用制表符分隔。
2.sort命令 用于对文本文件的行进行排序
2.1 sort 2.txt 按照每行的字典序进行排序
2.2 sort 1.txt 2.txt 排序两个文件的内容
2.3 sort 1.txt 2.txt 3.txt 多文件排序
2.4 sort 1.txt 2.txt | uniq 取出两个文件的并集(重复的行只保留一份)
2.5 sort 1.txt 2.txt | uniq -u(unique,唯一) 删除交集,留下其他的行
2.6 sort file1 file2 | uniq -d(duplicates,重复)取出两个文件的交集
3. comm命令 用于比较两个已排过序的文件
3.1 语法
comm [-123][--help][--version][第1个文件][第2个文件]
参数:
-1 不显示只在第 1 个文件里出现过的列。
-2 不显示只在第 2 个文件里出现过的列。
-3 不显示只在第 1 和第 2 个文件里出现过的列。
--help 在线帮助。
--version 显示版本信息。
3.2 comm 1.txt 2.txt
如果没有指定任何参数,则会把结果分成 3 列显示:第 1 列仅是在第 1 个文件中出现过的列,第 2 列是仅在第 2 个文件中出现过的列,第 3 列则是在第 1 与第 2 个文件里都出现过的列。
PS: sort 1.txt -o(output) 001.txt 是读取001.txt文件的内容,对其进行排序,然后将排序后的结果保存回001.txt文件。如果001.txt文件之前已经有内容,那么它将被新排序的内容所覆盖。