我想要用一个简短的一行代码来删除除最后n行或前n行之外的所有行。
示例:
---
aaaa
bbbb
cccc
dddd
cat/echo/find ... | sed < all except last 2 lines >
应该得到的结果
aaaa
bbbb
---
aaaa
bbbb
cccc
dddd
eeee
ffff
cat/echo/find ... | sed < all except last 2 lines >
应该得到的结果
aaaa
bbbb
cccc
dddd
---
我需要这个功能在非常大的n值下也能使用。所以可能需要将n设置为100或其他数值。
wc -l < $filename
将消除对cut
的需求。 - Sean Brighthead -n $(($(wc -l < $filename) - 2)) $filename
- Jotne