linux命令行:cut(带空字段)

时间:2011-09-25 18:12:18

标签: linux command-line cut

我有一个文件(input.txt),其中的数据列用空格分隔。我想获得第9列数据及其后的数据。

通常我会这样做:

cut -d " " -f 9- input.txt

但是,在此文件中,有时字段由多个空格分隔(并且每个行/列的空格数不同)。 cut似乎并不将连续空格视为一个分隔符。

我该怎么办?

2 个答案:

答案 0 :(得分:4)

sed -r 's/ +/ /g' input.txt|cut -d " " -f 9-

答案 1 :(得分:3)

您可以使用sedn个空格替换为单个空格:

sed -r 's/\ +/\ /g' input.txt | cut -d ' ' -f 9-

请确保列之间没有任何标签。