It looks like the 'N' command works on every other line:

$ cat in.txt 
 a
 b
 c
 d
$ sed '=;N' in.txt 
1
 a
 b
3
 c
 d

Maybe that would be natural because command 'N' joins the next line and changes the current line number. But (I saw this here):

$ sed 'N;$!P;$!D;$d' thegeekstuff.txt

The above example deletes the last two lines of a file. This works not only for even-line-numbered files but also for odd-line-numbered files. In this example 'N' command runs on every line. What's the difference?

And could you tell me why I cannot see the last line when I run sed like this:

# sed N odd-lined-file.txt
sed
Edit
Report