Linux如何删除末尾为0的行?
删除行尾为0的整行的sed解决方案
要删除报告中最后一列是0的整行,你需要用sed的删除命令d,而非替换命令。
正确命令
sed '/[[:space:]]0$/d' your_file.txt
如果文件里最后一列前的分隔是制表符或空格,也可以用更适配的写法:
sed '/[[:blank:]]0$/{d;}' your_file.txt
为什么之前的命令无效
你之前用的 sed 's/0$//' file 是替换操作,它只会删掉行尾的单个0字符,不会删除整行,自然达不到删除目标行的效果。
效果验证
输入示例:
196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 0 199 UDMA_CRC_Error_Count 0x000a 200 200 000 Old_age Always - 22
运行命令后输出:
199 UDMA_CRC_Error_Count 0x000a 200 200 000 Old_age Always - 22
内容的提问来源于stack exchange,提问作者msknight
相关产品推荐
相关产品推荐

