9
命令行工具可以“ cat”成对扩展文件中的所有行
假设我有一个看起来像这样的文件(称为sample.txt): Row1,10 Row2,20 Row3,30 Row4,40 我希望能够处理此文件中的流,该流本质上是所有四行的成对组合(因此我们应该最终得到总共16行)。例如,我正在寻找流式(即有效)命令,其输出为: Row1,10 Row1,10 Row1,10 Row2,20 Row1,10 Row3,30 Row1,10 Row4,40 Row2,20 Row1,10 Row1,20 Row2,20 ... Row4,40 Row4,40 我的用例是我想将此输出流式传输到另一个命令(如awk),以计算有关此成对组合的一些度量。 我有一种方法可以在awk中执行此操作,但是我担心的是,我对END {}块的使用意味着我基本上将整个文件存储在内存中,然后再输出。示例代码: awk '{arr[$1]=$1} END{for (a in arr){ for (a2 in arr) { print arr[a] " " arr[a2]}}}' samples/rows.txt Row3,30 Row3,30 Row3,30 Row4,40 Row3,30 Row1,10 Row3,30 Row2,20 Row4,40 …