使用sed或awk删除模式后的所有内容

尼科

我知道对此有很多疑问,但我无法解决。

我想清洗一组(例如root所以我需要在之后删除所有内容/etc/groupsedawkroot:*:0:

我尝试使用以下方法将其删除:

cat /etc/group | awk '!p;/^root:*:0:/{p=1}'

cat /etc/group | sed 's/root\:\*\:0\:.*//'

sed会删除整root行。

我究竟做错了什么?

肖恩

您可以使用带有sed的地址来限制要执行的行:

 sed '/^root:/s/:[^:]*$/:/' /etc/group

对于以开头的行,该行将root:删除:行中最后一个字符之后的所有字符

/etc/group记录只有4个以:分隔符分隔的列,因此它会剥去​​最后一个包含所有组成员的列)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用awk / sed删除每行之后的所有内容,包括第三个逗号

如何使用sed或awk删除模式后的某些字符?

使用sed(或类似方法)删除重复模式之间的所有内容

在Fasta文件中使用AWK之前,请删除模式和所有内容

Sed / Awk:上次出现图案后删除所有行

linux + sed +点后删除所有内容

sed删除字符串后的所有内容?

在 Unix 中删除模式后的所有内容

使用sed删除除特定模式以外的所有模式

使用awk提取某些字符后,如何删除/替换列中的所有内容?

使用awk或sed从列中删除字符的所有实例

使用SED删除单个重复模式之间的所有行

sed删除2种模式之间的所有内容,但不包括这些模式

使用sed,删除字符首次出现之前的所有内容

使用sed删除字符串前后的所有内容

使用sed命令删除HTML表中的所有内容

如何使用 sed 或 awk 删除此模式?

使用Regex删除映像MEM类型后的所有内容

sed命令删除所有内容并仅在模式之间保留单词?

删除模式之前的所有内容

sed / awk找到一个模式并打印前后的所有内容,直到另一个模式

awk或sed删除文件每一行中出现x后的所有文本

在PHP中删除字符串模式后的所有内容

正则表达式删除特定模式后的所有内容

使用sed删除从模式b开始的所有从模式b开始的行

删除空格后的所有内容 - Pyspark

删除匹配行后的所有内容

删除特定字符后的所有内容

删除模式之后的所有内容,包括模式