shell中 sed或awk 通过分隔符删除相应字段
文件格式如下aa|bb|cc|dd|cc|dd|ee|ff|想把第三个字段删除。变成aa|bb|dd|cc|dd|ff|请问通过sed或者awk如何表达呢?...
文件格式如下
aa|bb|cc|dd|
cc|dd|ee|ff|
想把第三个字段删除。变成
aa|bb|dd|
cc|dd|ff|
请问通过sed或者awk如何表达呢? 展开
aa|bb|cc|dd|
cc|dd|ee|ff|
想把第三个字段删除。变成
aa|bb|dd|
cc|dd|ff|
请问通过sed或者awk如何表达呢? 展开
2个回答
展开全部
awk -F"|" '{print $1"|"$2"|"$4"|"}' yourfile
这样就会在终端输出结果,如果要保存,只需把输出重定向到一个文件就行了
awk -F"|" '{print $1"|"$2"|"$4"|"}' yourfile >newfile
或者使用sed
sed 's/|[^|]*\(|[^|]*|$\)/\1/' yourfile
如果想直接修改原文件:
sed -i 's/|[^|]*\(|[^|]*|$\)/\1/' yourfile
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询