Bisakah kurang menunjukkan proporsi file teks yang dilihat?

18

Sesuai dengan judulnya, ketika saya sedang menelusuri file teks, saya ingin mengetahui porporsi yang dilihat saat ini dari seluruh file teks.

Saya tahu bahwa dengan opsi -N, kita dapat mengaktifkan nomor baris, tetapi bagaimana saya bisa membuat lebih sedikit menampilkan nomor baris seluruh file teks?

Terima kasih.

Jichao
sumber

Jawaban:

19

Jika Anda membuka file dengan kurang dari menekan Ctrl-g akan menampilkan nomor baris saat ini, total baris dan persentase serta yang ditunjukkan di bawah ini:

baris 51-100 / 185 byte 3228/5886 54% (tekan RETURN)

secureBadshah
sumber
1
terima kasih. setelah mengunjungi kembali halaman manual, kelola untuk menemukannya dan dapatkan dua perintah lain yang sama ': f' dan '='. maaf untuk ini.
Jichao
1
Sayangnya itu tidak bekerja melalui pipa, baik dengan parameter -M atau -m dari jawaban lainnya. Misalnya wdiff version1.txt version2.txt | colordiff | less -RMtidak menunjukkan persentasenya. Beri tahu saya jika ada yang punya solusi atau solusi untuk ini. Perbarui: solusinya adalah menambahkan + Gg seperti jawaban lain dijelaskan.
baptx
18

Apakah maksud Anda suka dengan -Msakelar?

Teddy
sumber
Itulah yang saya inginkan!
Jichao
Atau -mjika nomor baris tidak diperlukan.
Franklin Yu
1
Apakah Anda punya ide jika ada solusi atau solusi untuk menampilkan persentase saat menggunakan pipa? Sebagai contoh, saya tidak dapat melihat persentase untuk diff berwarna dengan perintah ini: wdiff version1.txt version2.txt | colordiff | less -RMPembaruan: solusinya adalah menambahkan + Gg seperti jawaban lain yang dijelaskan.
baptx
6

less -M +Gg

untuk file yang tidak terlalu besar tidak apa-apa, karena +G( Gperintah) buka sampai akhir file

ALZ
sumber
1
Bagus sekali $MANPAGER! Lihat man man.
Tom Hale
Bagus colordiffjuga! Misalnya:wdiff version1.txt version2.txt | colordiff | less -RM +Gg
baptx
4

Hanya sedikit memperluas jawaban sebelumnya. Garis komando:

less -M +Gg

melakukan hal berikut:

-M Tampilkan posisi saat ini dalam file pada prompt + Gg Run perintah G(pergi ke akhir file) dan g(kembali ke awal file)

Jika lessmembaca dari stdin, yang terjadi ketika manmenampilkan halaman manual, ia tidak tahu jumlah total baris dalam file terlebih dahulu, sehingga ia dapat menghitung posisinya dengan benar. Oleh karena itu, +Ggdiperlukan agar lessbisa mendapatkan jumlah total garis, dan dengan demikian menghitung posisi saat ini sebagai persentase.

Saya merasa berguna untuk mengatur variabel-variabel ini di ~ / .bashrc :

export LESS+='-M'
export MANPAGER='less +Gg'

LESSakan memastikan bahwa semua doa dari lessakan menunjukkan posisi saat ini pada prompt, dan MANPAGERakan memastikan bahwa lessakan bisa mendapatkan jumlah baris di halaman manual, yang lesskemudian akan ditampilkan di prompt. Ini tampaknya lebih masuk akal tidak menyertakan +Ggdalam LESSuntuk mencegah lessdari mencoba untuk pergi ke ujung input pipa berpotensi besar. Jika itu diperlukan, seseorang dapat selalu menjalankan perintah Gdan gsecara manual.

Paulo Marcel Coelho Aragão
sumber
+1 untuk cara manual, tekanGg
wisbucky
Mengapa memberi tanda tambah "KURANG +" dalam contoh Anda? Bukankah seharusnya cukup menulis "export LESS = 'M'"?
db
@db, KURANG + = '- M' akan menambahkan opsi -M untuk opsi apa pun yang sebelumnya telah ditetapkan untuk KURANG
Paulo Marcel Coelho Aragão