假设我在商店里有货架,每个货架都有0-9箱特定类型。我想从每个架子中选择不超过4个盒子,直到我总共有15个盒子。如何编写输入文件类似于
的命令行代码AA123 small
AA124 small
AA122 small
BB345 medium
..
..
100s of such
前2个字母定义货架,数字代表货架上的箱号。
为了寻找独特的货架,我可以使用
cat filename | awk '{print $1}' | cut -c 1-2 | sort | uniq | xargs
然后我试图在for / while循环中使用它作为输入但是卡住了。
答案 0 :(得分:2)
我认为awk
是正确的工具。
以下一个班轮打印前四次上架,总共最多15个:
awk 'a[substr($1,1,2)]++ < 4 {if (t++>14) exit; print}' file