![如何在第一列下方添加 n 列?](https://linux22.com/image/924666/%E5%A6%82%E4%BD%95%E5%9C%A8%E7%AC%AC%E4%B8%80%E5%88%97%E4%B8%8B%E6%96%B9%E6%B7%BB%E5%8A%A0%20n%20%E5%88%97%EF%BC%9F.png)
我有一个制表符分隔的数据:
1-1 2-1 3-1 ...
1-2 2-2 3-2 ...
1-3 2-3 3-3 ...
1-4 3-4 ...
3-5
我想要的输出应该是这样的:
1-1
1-2
1-3
1-4
2-1
2-2
2-3
3-1
3-2
3-3
3-4
3-5
...
...
我如何使用 awk 或任何其他工具来做到这一点?
答案1
使用此命令:
sed 's/\s\+/\n/g' data.txt | sort -n | sed '/^$/d
我假设数据条目由一个或多个空格分隔。sed 只是用换行符替换空格。结果将管道传递给 sort 进行排序。最后一个 sed 删除空行。
或者你可以使用翻译命令:
cat data.txt | tr " " "\n" | sort -n