Secara default, man
menggunakan less
output teks. Bagaimana saya bisa tahu itu hanya output ke stdout? Emulator terminal saya memiliki bilah gulir dan fungsi pencarian dan saya ingin menggunakannya bukan tombol panah.
Sebenarnya ia menggunakan apapun yang ditentukan dalam variabel lingkungan MANPAGER
atau PAGER
.
Bergantung pada man
implementasi dan versi Anda, bisa juga ada saklar baris perintah untuk menentukan pager.
Dengan implementasi man-db saya menggunakan semua cara di bawah ini untuk bekerja:
MANPAGER=cat man man
PAGER=cat man man
MANOPT='-P cat' man man
man -P cat man
Untuk mengaturnya secara permanen, cukup tambahkan ke ~/.bashrc
(atau file inisialisasi lainnya yang digunakan oleh shell Anda):
export MANPAGER=cat
Itu bekerja dengan beberapa man
implementasi yang lebih tua juga, sedangkan MANOPT
man-db spesifik:
export MANOPT='-P cat'
(Lebih baik jangan mengatur PAGER
seperti itu. Yang itu digunakan oleh banyak aplikasi lain juga.)
Mungkin ada juga file konfigurasi global. man-db memiliki /etc/man_db.conf
atau /etc/manpath.config
. Di sana Anda dapat mengatur:
DEFINE pager cat
Tapi sayangnya itu dipertimbangkan hanya jika keduanya MANPAGER
tidak PAGER
diatur.
~/.bashrc
, Anda juga bisa membungkus ekspor dalam bersyarat sehingga hanya menetapkan pager jika itu yang sesuai terminal / emulator:if [ "x$TERM" = "xxterm" ]; then export MANPAGER=cat; fi
; jelas gantixterm
dengan emulator yang sesuai.MANPAGER
. Saya menggunakan kata "sayangnya" untuk fakta bahwa perilaku juga berlaku untukPAGER
, yang merupakan pengaturan umum (digunakan oleh banyak alat) dan saya lebih suka untuk tidak mengesampingkan pengaturan tertentu (digunakan oleh hanya satu alat), bahkan jika itu satu adalah tingkat sistem.PAGER=cat man
alias man='PAGER=cat MANPAGER=cat man'
Cukup menyalurkan output
man
kecat
?sumber
man
implementasinya, bahwa 1) menimbulkan kesalahan, 2) menampilkan kode format troff di terminal, 3) menghapus semua pemformatan, 4) berfungsi seperti yang diharapkan.man
tampaknya menggunakan pager yang diaturMANPAGER
bahkan ketika output adalah file atau pipa. Dan jika pager ituless
, maka itu semua baik karenaless
berperilaku seperticat
ketika output adalah pipa ... Tetapi jika Anda menggunakan sesuatu yang lain (seperti Vim, yang saya gunakan), maka itu tidak begitu baik.Coba perintah ini untuk menghasilkan output man tanpa pager.
man ls | cat
(lebar tetap yang dihasilkan)man -P cat ls
(lebar variabel yang dihasilkan)Saya menggunakan sistem linux GNU
sumber
Sudut lain: Mirip dengan jawaban Tony.
Anda juga dapat mengarahkan output manusia ke file dan melihatnya dengan editor teks favorit Anda atau bahkan menambahkan bookmark, komentar, dll.
Saya memiliki salinan halaman bash man dan juga hanya bagian-bagian pada bash flow control dan bash flag test yang disimpan sebagai file teks di direktori bin saya sehingga saya dapat memuatnya langsung ke editor teks (kate) untuk referensi sementara saya menulis skrip bash.
Peringatan: tergantung pada sistem Anda dan halaman manual, perintah di atas dapat menghasilkan informasi format dan kontrol karakter dalam file.
Untuk menghindari ini, lakukan seperti yang disarankan dalam
LESS='+/^TIPS' man man
:sumber