如何使用 awk 或 cat 分隔 linux 中的列

How to separate columns in linux using awk or cat

我有一个包含 900.000 列的文件,结构是:

1613 1200000012000500000011111.......
112345 1200000012000500000011111.......
1287659 1200000012000500000011111.......
1234 1200000012000500000011111....... 
712826  1200000012000500000011111.......

我只需要 space 之前的数字,这是一个新文件:

1613 
112345 
1287659 
1234 
712826 

我试试

cat -df.txt |cut -d |,| -f7

但它不起作用。

基于您的尝试的几种方法:

awk

RavinderSingh13, straightforward 方法也建议

awk '{print }' yourfile.txt

记住 awk 不需要 cat

还有香草切块,这应该有效:

cut -f1 -d' ' yourfile.txt

此处您需要 cut 打印第一个字段 -f1,其中分隔符是空格 -d' '。还要记住 cut 不需要 cat(不像我总是忘记)。

其他非常好的 grep 和 sed 方法可以在 this question

中找到