示例文件:
第一列可以有固定的4个无序值集 world1.com,world2.com,world3.com or world4.com
第二列是属于每一行的键,因此四组中的每一个都有唯一的随机键。
world4.com /randomkeyhghgdh778/key67567
world1.com /randomkeygahjuh572/key639839
world2.com /randomkey788gauh72/key63whjk
world3.com /randomkey788gauh72/key63whjk
world1.com /randomkeyhueh34778/key67uuu77
world4.com /randomkey8998382/key6hh77686
world3.com /randomkey7HHHH0000/key6333355k
world2.com /randomkeyJJJJ1111/key63333
等等
所需的输出:
world1.com /randomkeygahjuh572/key639839
world2.com /randomkey788gauh72/key63whjk
world3.com /randomkey788gauh72/key63whjk
world4.com /randomkeyhghgdh778/key67567
world1.com /randomkeyhueh34778/key67uuu77
world2.com /randomkeyJJJJ1111/key63333
world3.com /randomkey7HHHH0000/key6333355k
world4.com /randomkey8998382/key6hh77686
要按世界组织文件:
$ paste -d'\n' <(grep world1 file) <(grep world2 file) <(grep world3 file) <(grep world4 file)
world1.com /randomkeygahjuh572/key639839
world2.com /randomkey788gauh72/key63whjk
world3.com /randomkey788gauh72/key63whjk
world4.com /randomkeyhghgdh778/key67567
world1.com /randomkeyhueh34778/key67uuu77
world2.com /randomkeyJJJJ1111/key63333
world3.com /randomkey7HHHH0000/key6333355k
world4.com /randomkey8998382/key6hh77686
我们可以grep
用来选择每个世界的线:
$ grep world4 file
world4.com /randomkeyhghgdh778/key67567
world4.com /randomkey8998382/key6hh77686
paste
合并多个文件中的行。粘贴命令可能如下所示:
paste -d'\n' file1 file2 file3 file3.
实际上,我们不必为每个世界都创建真实的文件。相反,我们可以使用流程替换为每个对象创建类似文件的对象:
paste -d'\n' <(grep world1 file) <(grep world2 file) <(grep world3 file) <(grep world4 file)
bash,zsh和AT&T ksh88和ksh93支持进程替换,但不支持dash,pdksh或mksh。
为了说明这种方法的灵活性,我们将对每个世界的键进行排序。注意:排序会破坏行集。如果要将集合放在一起,请不要使用它。
我们可以使用grep
,然后再将sort
每个世界分开,然后使用paste
:
$ paste -d'\n' <(grep world1 file | sort -k2,2) <(grep world2 file | sort -k2,2) <(grep world3 file | sort -k2,2) <(grep world4 file | sort -k2,2)
world1.com /randomkeygahjuh572/key639839
world2.com /randomkey788gauh72/key63whjk
world3.com /randomkey788gauh72/key63whjk
world4.com /randomkey8998382/key6hh77686
world1.com /randomkeyhueh34778/key67uuu77
world2.com /randomkeyJJJJ1111/key63333
world3.com /randomkey7HHHH0000/key6333355k
world4.com /randomkeyhghgdh778/key67567
请注意,这sort
取决于语言环境。不同locales
可能导致不同的订单。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句