基于共享密钥连接两个文件

基于共享密钥连接两个文件

我有两个文件想要根据面包店编号加入。

[文件1]bakedGoods.txt

1:Chocolate Cookies:111
2:Banana Muffins:222
3:Apple Pie:333
4:Strawberry Cheesecake:444
5:Pineapple Turnover:555

其中,第 1 列是商品编号,第 2 列是商品名称,第 3 列是商店编号。

[文件2]bakeryStores.txt

111:Cookies Cookies Cookies
222:Bellas Desserts Co.
333:Apples N' Sweets
444:Cheesecake Emporium
777:Estrellas Bakery
888:Suzy's Baked Goods

其中第 1 列是面包店编号,第 2 列是面包店名称。

我的目标是加入具有相同面包店号码的信息通过使用加入命令(我认为这是最好的方法)。这意味着文件 1 的第 3 列和文件 2 的第 1 列。对于不可配对的空字段显示一条消息“Not in store”。 (我认为使用选项 -e"Not in store" 是最好的方法。以下是我想要实现的目标。

111:Chocolate Cookies:Cookies Cookies Cookies
222:Banana Muffins:Bellas Desserts Co.
333:Apple Pie:Apples N' Sweets
444:Strawberry Cheesecake:Cheesecake Emporium
Not in store
Not in store

我尝试按商店编号连接这两个文件,我还使用 -e 选项(用于消息),但没有任何变化。我也没有看到任何输出。

我尝试join -1 3 -2 1 -e "Not in store" bakedGoods.txt bakeryStores.txt了解我想要做什么以及如何做,只是不确定为什么它不显示任何内容。通常,当我加入或合并文件而不附加时,我可以立即看到结果。我附加了,但两个文件保持不变。

答案1

回答完这两个问题,你的问题就迎刃而解了。

默认字段分隔符(join)是什么?你如何改变它?

相关内容