基本上,我想将一列文件转换为由行数指定的多列文件。
我不想重新发明轮子。在编写自定义脚本之前,我想确定是否有 unix 命令/或执行此操作的标准方法。
例如,假设我有以下文件:
$cat input.txt
tom
jack
kim
bart
foo
bar
我想把它变成 3 行文件
$ cat input.txt | my_script --every=3 --delimiter=tab
tom bart
jack foo
kim bar
或具有不同定界符的 2 行文件:
$ cat input.txt | my_script --every=2 --delimiter=,
tom,kim,foo
jack,bart,bar
最佳答案
使用 xargs
怎么样?
每行两条记录:
$ xargs -n2 < file
tom jack
kim bart
foo bar
每行三个记录:
$ xargs -n3 < file
tom jack kim
bart foo bar
关于bash - 将单列文件转换为多列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23004727/