删除文件中第一列
123,456,789
123,456,789
123,456,789
123,456,789
123,456,789
123,456,789
123,456,789
123,456,789
123,456,789
123,456,789
123,456,789
123,456,789
awk暴力解法
cat data.txt|awk -F, 'BEGIN{OFS=","}{$1=NULL;print $2,$3}'
优点是简单,容易想到。缺点是如果列很多就要一一枚举。
awk其他解法
也可以这样:
cat data.txt|awk -F, 'BEGIN{OFS=","}{$1="";print $0}'
cat data.txt|awk -F, 'BEGIN{OFS=","}{$1=NULL;print $0}'
但是这样,会保留分隔符。变成:
,456,789
,456,789
,456,789
,456,789
,456,789
,456,789
,456,789
,456,789
,456,789
,456,789
,456,789
,456,789
可以再搭配一个删除首行字符的操作:
cat data.txt|awk -F, 'BEGIN{OFS=","}{$1="";print $0}'|sed 's/^.//'
如果想删开头两个字符可以用:
两个点。