如何使用awk获得具有给定分布的随机线?
我有两个表格文件,我想合并,但在此之前,我想减少第二个 第一个文件假设File1是表格式的,如下所示如何使用awk获得具有给定分布的随机线?,awk,Awk,我有两个表格文件,我想合并,但在此之前,我想减少第二个 第一个文件假设File1是表格式的,如下所示 A 67 98 56 A 22 29 62 A 11 99 28 B 37 88 14 B 33 99 65 我们有三行A和两行B File2在A和B之间包含3000行,我想从File2中随机选择行,但是A和B的数量与File1完全相同,这意味着只有3个随机行和2个随机行 有人知道如何使用awk来实现这一点吗 谢谢/bin/bash read-r acount bcount#/bin
A 67 98 56
A 22 29 62
A 11 99 28
B 37 88 14
B 33 99 65
我们有三行A和两行B
File2在A和B之间包含3000行,我想从File2中随机选择行,但是A和B的数量与File1完全相同,这意味着只有3个随机行和2个随机行
有人知道如何使用awk来实现这一点吗
谢谢/bin/bash
read-r acount bcount#/bin/bash
read-r acount b count这可能适合您:
grep '^A' file2 | sort -R | head -$(grep -c '^A' file1) >file3
grep '^B' file2 | sort -R | head -$(grep -c '^B' file1) >>file3
注意:这假设文件1已排序。这可能适用于您:
grep '^A' file2 | sort -R | head -$(grep -c '^A' file1) >file3
grep '^B' file2 | sort -R | head -$(grep -c '^B' file1) >>file3
注意:这假设file1
已排序