Apakah expr
tersedia dengan sistem Anda? Kemudian Anda dapat mencoba mengevaluasi nomor baris yang diinginkan setelah Anda menghitung jumlah total baris dalam file.
Saya membuat file dengan nama yang tmp
berisi angka dari 1 hingga 20 di setiap baris.
nlines=$(cat tmp | sed -n '$=')
cat tmp | sed -n $(expr $nlines - 9),"$nlines"p
11
12
13
14
15
16
17
18
19
20
Tentu saja, Anda dapat menggunakan wc -l
, jika tersedia.
Perintah untuk menghitung jumlah total baris dalam file diambil dari sed one liners . Namun, saya belum memeriksa apakah itu berfungsi dengan file kosong juga.
PS Jika expr
tidak tersedia, Anda dapat menggunakan angka kurang di Bash seperti yang ditunjukkan di bawah ini:
cat tmp | sed -n $((nlines-9)),"$nlines"p