菜鸟笔记
提升您的技术认知

shell中如何获取文件指定行-ag真人游戏

比如要获取/etc/passwd文件, 要获取其第6-10行,并显示每行的行号。总结一下,方法有很多,行号的显示可以借助cat -n参数,或者sed =来显示。 小结一下,可以有以下方法来获取。 

# 1). -n显示行号,tail -n  6显示第6行之后的行,结合head -n 5,获取前面5行,刚好6-10
$ cat -n /etc/passwd | tail -n  6 | head -n 5   
# 2). 先用head -n 10来获取前10行,再结合tail -n 5获取后面5行,刚好也是6-10行
$ cat -n /etc/passwd | head -n 10 | tail -n 5  
# 3). cat -n来显示行号,再用awk中$1来判断行号范围
$ cat -n /etc/passwd | awk '($1 > 1 && $1 < 11){print $0}' 
# 4). 借助于6,10p来打印第6行到第10行
$ cat -n /etc/passwd | sed -n '6,10p'
# 5). =打印行号,使用n;来获取下一行,再用\t来替换换行符,最后使用6,10p来获取
$ sed = /etc/passwd | sed 'n;s/\n/\t/' | sed -n '6,10p'

 

网站地图