删除除第一个和第n个之外的文本文件中的行

lin*_*930 2 bash awk sed

我有一个由数字组成的长文本文件,例如:

1
2
9.252
9.252
9.272
1
1
6.11
6.11
6.129
Run Code Online (Sandbox Code Playgroud)

我想保留第一行,删除后续三行,然后保留下一行.我想为整个文件执行此过程.按照这个逻辑,考虑上面的输入,我想得到以下输出:

1
9.272
1
6.129
Run Code Online (Sandbox Code Playgroud)

Pes*_*The 5

使用GNUsed(~扩展所需):

sed -n '1~5p;5~5p' file
Run Code Online (Sandbox Code Playgroud)