如何使用 awk 或 sed 删除文件中以冒号结尾的所有行?

How do i delete all the lines in a file ending with colon using awk or sed?

我有一个包含一些表格数据的文件。但它在数据之间也有一些文本行(以冒号结尾)。所以我想删除那些文本行,只有我的数据。

你可以使用 grep - 比如

grep -v ":$" file

或 sed - 喜欢

sed "/:$/d" file

试试这个:

awk '{gsub(/:$/,""); print}' file.txt

这将只取最后一个冒号,而不是行与行之间包含冒号的冒号。

或如 JID 所言:

awk '!/:$/' file