在Linux中,打印文本文件的某一列可以使用awk
或cut
命令。这里分别演示如何打印一个10行9列文件的最后一列和最前一列:
1. 打印最后一列:
使用awk
命令:
awk '{print $NF}' filename.txt
这里的NF
是内部变量,表示当前行的字段数量,所以 $NF
就是最后一个字段,也就是最后一列。
使用cut
命令:
cut -d ' ' -f 9 filename.txt
这里假设每一列之间是以空格作为分隔符的(默认分隔符也是空格)。-d ' '
指定了分隔符为空格,-f 9
表示打印第9列,不过要注意的是,cut
命令中的列数是从1开始计数的,所以对于9列的文件,最后一列对应的数字是9。
2. 打印最前一列:
使用awk
命令:
awk '{print $1}' filename.txt
$1
表示第一列。
使用cut
命令:
cut -d ' ' -f 1 filename.txt
这里同样假设列间分隔符是空格,-f 1
表示打印文件的第一列。
3. 综上所述:
如果文件的列不是由空格分隔,需要根据实际情况更改-d
后面的分隔符参数。例如,如果是逗号分隔,那么分隔符应设为-d ','
。