[英]In a text file, how do I delete all lines subset of their immediately following line?
In a text file, I need to delete lines that are exactly beginning like the next line.在文本文件中,我需要删除与下一行完全相同的行。 See example below.
请参阅下面的示例。
Input:输入:
I like
I like apples
I like apples and oranges
more
more everyday
more everyday
more everyday the more
more everyday the more I play
I
I like
Output:输出:
I like apples and oranges
more everyday the more I play
I like
One way:单程:
$ perl -lne 'print $last unless /^\Q$last/; $last = $_;
END { print $last }' input.txt
I like apples and oranges
more everyday the more I play
I like
这个sed
过滤器读取下一行并删除前一行,只要它匹配:
sed ':0;N;s/^\(.*\)\n\1/\1/;t0;P;D'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.