ファイルの最初の5行と最後の5行[重複]

ファイルの最初の5行と最後の5行[重複]

ファイルの最初の5行と最後の5行を表示するには?

今私は使っています。

head filename ; tail filename

もう少し効率的な方法がありますか?

答え1

ファイルを一度だけ処理するだけです。

{ head -n 1; tail -n 5; } <file

答え2

私は小さなシェルスクリプトを書いたが、それは私にとってうまくいく

virt01@virt01:~/test$ echo "alias myv='/home/virt01/test/myv.sh'" >> ~/.bashrc ; bash
virt01@virt01:~/test$ myv
^C
virt01@virt01:~/test$ myv line.txt
I am 1 line
I am 2 line
I am 3 line
I am 4 line
I am 5 line
============
I am 16 line
I am 17 line
I am 18 line
I am 19 line
I am 20 line
virt01@virt01:~/test$ cat myv.sh
#!/bin/bash

head -n 5 $1
echo "============"
tail -n 5 $1


virt01@virt01:~/test$

関連情報