jion 命令用来combine连个文件,前提是这两个文件有共同的key,或者说有共同的域。如果两个文件域按顺序有不同的话,就会忽略不同的域,而只去combine相同顺序下的有共同field的行。
例如: 我现在有两个文件,一个是:employee.txt,另一个是bonux.txt,彼此行记录一一对应〉
[clu@portal.ny1 hack101]$ cat employee.txt
100 Jason Smith
200 John Doe
300 Sanjay Gupta
400 Ashok Sharma
[clu@portal.ny1 hack101]$ cat bonus.txt
100 $5,000
200 $500
300 $3,000
400 $1,250
[clu@portal.ny1 hack101]$ jion employee.txt bonus.txt
-bash: jion: command not found
[clu@portal.ny1 hack101]$ join employee.txt bonus.txt
100 Jason Smith $5,000
200 John Doe $500
300 Sanjay Gupta $3,000
400 Ashok Sharma $1,250
如果bonux.txt文件中间少了一个记录,那么该行记录就不会被combine。
[clu@portal.ny1 hack101]$ cat bonus.txt
100 $5,000
200 $500
400 $1,250
[clu@portal.ny1 hack101]$ join employee.txt bonus.txt
100 Jason Smith $5,000
200 John Doe $500
400 Ashok Sharma $1,250
如果bonus.txt文件中间多了一行记录,虽然该记录无法匹配,但后面的记录可以匹配〉
[clu@portal.ny1 hack101]$ cat bonus.txt
100 $5,000
200 $500
201 $201
300 $oo
400 $1,250
[clu@portal.ny1 hack101]$ join employee.txt bonus.txt
100 Jason Smith $5,000
200 John Doe $500
300 Sanjay Gupta $oo
400 Ashok Sharma $1,250
经过测试得知:只要被修改的记录是按共同域的合理顺序来排序的,那么linux就可以做到正常的排序, 如下:
[clu@portal.ny1 hack101]$ cat bonus.txt
100 $5,000
200 $500
201 $201
202 $333
300 $oo
400 $222
401 $1,250
[clu@portal.ny1 hack101]$ join employee.txt bonus.txt
100 Jason Smith $5,000
200 John Doe $500
300 Sanjay Gupta $oo
400 Ashok Sharma $222
但是如果顺序不合理的话,linux就不会按正确的顺序来匹配〉
例如:
[clu@portal.ny1 hack101]$ cat bonus.txt
100 $5,000
200 $500
301 $201
302 $333
300 $oo
400 $222
401 $1,250
[clu@portal.ny1 hack101]$ join employee.txt bonus.txt
100 Jason Smith $5,000
200 John Doe $500
join: file 2 is not in sorted order
400 Ashok Sharma $222
--EOF--
分享到:
相关推荐
#### Hack 11. Join Command `join`命令用于合并两个已排序的文件。 ```bash join file1 file2 ``` #### Hack 12. Change the Case 使用`tr`命令改变文本中的大小写。 ```bash echo "Hello World" | tr '[:upper:]'...
**Hack 11. Join Command** `join`命令用于连接两个文件中具有共同字段的行。假设文件`file1`和`file2`都有一个共同的字段,可以使用命令`join file1 file2`来连接它们。 **Hack 12. Change the Case** 要改变...
【Android 逆向】代码调试器开发 ( 使用 NDK 中的 ndk-build + Android.mk 编译 Android 平台的代码调试器可执行应用 ) https://hanshuliang.blog.csdn.net/article/details/121059532 博客代码
《McGraw.Hill.HackNotes.Windows.Security.Portable.Reference》一书由Michael O'Dea撰写,是一本关于Windows系统安全的便携式参考书。本书以其简洁明了、直击要害的特点,在信息安全领域赢得了广泛赞誉。它从攻击...
计网学习练习的软件
标题“Save As MHT_Hack520.com.zip”指的是一个与Chrome浏览器相关的插件,其功能是将网页保存为MHT(MHTML)格式的文件。MHT全称为单个文件网页,它是一种Web页面的存档格式,能够将网页上的所有元素,包括HTML...
hack.chat.js 使用ws包的hack.chat的API包装器 用法 var HackChat = require ( "hack-chat" ) ; var chat = new HackChat ( ) ; // Client group for multiple channels chat . join ( "lobby" , "TestUser" ) ; ...
史上最全的CSS hack方式一览.mhtml史上最全的CSS hack方式一览.mhtml史上最全的CSS hack方式一览.mhtml史上最全的CSS hack方式一览.mhtml史上最全的CSS hack方式一览.mhtml史上最全的CSS hack方式一览.mhtml史上最全...
Fr3报表查看器hack44.cn.exe
陇剑杯题目附件hack.pcap
Git_Hack-.zip 文件似乎是一个包含有关利用Git进行黑客攻击的资源包,主要涉及的是Git的潜在安全漏洞以及如何在Python2环境下通过命令行(cmd)来执行相关操作。在这个场景下,我们要讨论的主要知识点包括Git的安全...
《NOIP宝藏hack数据——深度探索与分析》 在信息技术高速发展的今天,数据的重要性日益凸显。NOIP(全国青少年信息学奥林匹克联赛)作为一项旨在培养青少年计算机编程能力的比赛,其蕴含的数据无疑是一份宝贵的资源...
HackNotes Linux and Unix Security Portable Reference is a valuable reference for busy administrators and consultants who value the condensed and practical insight to understanding the threats they ...
rainclass-hack.1.1.0.user.js
此压缩包“商业编程-源码-XOOPS v2.2 简体中文正式版HACK插件.zip”包含的是XOOPS 2.2版本的源代码,以及针对该版本的一些中文汉化插件。这些插件可能是开发者或社区成员为了增强系统功能、改善用户体验而开发的定制...
这个压缩包文件“Hack Nerd Font.zip”显然包含了一组特别设计的字体,旨在增强终端用户体验,特别是针对`powerlevel10k`主题。`powerlevel10k`是`Oh My Zsh`的一个扩展主题,它为终端用户提供了一个高度可配置且...
【前端项目-hack.zip】是一个压缩包,包含了名为“hack-master”的前端项目源代码。这个项目采用了一种名为“死的简单CSS框架”的技术,它旨在简化前端开发过程,为开发者提供一个快速构建用户界面的基础。 一、CSS...
Apple Stand PrimeP7。
快捷的复制软件,支持各种刻录机,速度快,操作方便快捷1