Jes*_*sen 11 command-line tail head
我想输出文件中a和b之间的所有行.
这有效但似乎有点矫枉过正:
head -n 900 file.txt | tail -n 100
Run Code Online (Sandbox Code Playgroud)
我缺乏unix知识似乎是这里的限制.有什么建议?
ndi*_*dim 17
sed -n '800,900p' file.txt
Run Code Online (Sandbox Code Playgroud)
这将打印(p)行800到900,包括行800和900(即总共101行).它不会打印任何其他行(-n).
调整从800到801和/或900到899,使其完全符合您的想法,"800到900之间"应该在您的情况下.
找到一个更漂亮的方法:使用sed,只打印a和b之间的行:
sed -n -e 800,900p filename.txt
Run Code Online (Sandbox Code Playgroud)
来自博文:使用sed提取文本文件中的行
我使用它的一种方法是找到(和差异)文件的类似部分:
sed -n -e 705,830p mnetframe.css > tmp1; \
sed -n -e 830,955p mnetframe.css > tmp2; \
diff --side-by-side tmp1 tmp2
Run Code Online (Sandbox Code Playgroud)
这将给我一个很好的并排比较文件的类似部分:)