it-swarm-id.com

Trik dan tips untuk mencari informasi di halaman manual

Adakah yang punya trik dan tip untuk menemukan informasi di halaman manual?

82
Casebash

Perhatikan nomor bagian: Misalkan Anda ingin bantuan pada printf. setidaknya ada dua di antaranya: di Shell dan C. Versi bash dari printf ada di bagian 1, versi C ada di bagian 3 atau 3C. Jika Anda tidak tahu yang mana yang Anda inginkan, ketik man -a printf, Dan semua halaman manual akan ditampilkan.

Jika yang Anda cari adalah format printf dengan semua kode% dan itu tidak muncul pada halaman manual printf, Anda dapat melompat ke halaman manual terkait yang terdaftar di bawah JUGA JUGA paragraf. Anda mungkin menemukan sesuatu seperti formats(5), yang menyarankan Anda untuk mengetik man 5 formats.

Jika Anda kesal karena man printf Memberi Anda printf (1) dan yang Anda inginkan adalah printf (3), Anda harus mengubah urutan direktori yang dipindai di variabel lingkungan MANPATH dan meletakkan yang untuk bahasa C sebelum perintah Shell. Ini dapat terjadi juga ketika halaman manual Fortran atau TCL/Tk didaftar sebelum yang C.

Jika Anda tidak tahu harus mulai dari mana, ketik man intro, Atau man -s <section> intro. Ini memberi Anda ringkasan perintah dari bagian yang diminta.

Bagian didefinisikan dengan baik:

  • 1 untuk perintah Shell,
  • 2 untuk panggilan sistem,
  • 3 untuk antarmuka pemrograman (kadang-kadang 3C untuk C, 3F untuk Fortran ...)
  • 5 adalah untuk format file dan aturan lain seperti format printf atau regex.

Terakhir tetapi tidak kalah pentingnya: informasi yang dikirim di halaman manual tidak berlebihan, jadi bacalah dengan cermat dari awal hingga akhir untuk meningkatkan peluang Anda untuk menemukan yang Anda butuhkan.

51
mouviciel

Ketik slash / lalu ketikkan string yang akan dicari. Kemudian terus tekan n untuk sampai ke item berikutnya

58

man -k pencarian

Ini akan memberi Anda daftar semua halaman manual yang berhubungan dengan 'pencarian'.

37
Kristof Provost

Seperti yang dikatakan @Steven D, jangan lupa halaman info.

Selain itu, jangan terintimidasi oleh halaman info. Saya kenal banyak orang yang tidak menggunakan halaman info karena sistem navigasi bawaan. Solusi favorit saya adalah menyalurkan halaman info melalui less:

info gpg |less

Dengan cara ini, saya dapat menavigasi halaman info menggunakan pager favorit saya. Halaman info sekarang akan berperilaku sama dengan halaman man.

20
Stefan Lasiewski

Utilitas apropos sangat berguna untuk menemukan halaman manual yang sesuai.

18
Hank Gay

Pager default untuk membaca halaman manual adalah less. Ada dokumentasi di lessdi sini .

Khususnya:

  • Gulir ke atas/bawah dengan satu halaman: b / space
  • Gulir ke atas/bawah setengah halaman: u / d
  • Mencari maju/mundur: / / ?, lalu ketikkan ekspresi reguler,
    • lalu tekan n untuk pergi ke pertandingan berikutnya atau
    • shiftN untuk pergi ke pertandingan sebelumnya.
    • Jika halaman ditutupi dengan pertandingan yang tidak menarik, tekan space untuk pergi ke halaman berikutnya.
  • Tambahkan @ sebelum ekspresi reguler untuk mencari dari awal.
16
Casebash

Selalu periksa apa yang ada di bagian LIHAT JUGA. Perintah yang ditunjukkan di bawah bagian ini di halaman info dapat dipilih dengan menempatkan kursor pada perintah yang diinginkan dan kemudian menekan tombol enter. Seringkali saya menemukan perintah atau fungsi lain yang bermanfaat seperti itu.

8
Neth

Jika Anda lebih nyaman dengan editor daripada pager default, Anda dapat mengatur MANPAGER di lingkungan Anda. Sebagai contoh, saya memiliki baris ini di ~/.bashrc:

export MANPAGER="col -b | vim -c 'set ft=man nomod nolist ignorecase' -"
7
Rob Hoelz

Saya kira, menggunakan kebanyakan pager adalah ide yang bagus. Pager ini sangat kuat, tetapi fitur utama bagi saya - menampilkan halaman manual berwarna. Fitur ini meningkatkan persepsi teks biasa dan memudahkan pencarian informasi yang diperlukan.

Lihat screenshot yang terlampir, teks terlihat sangat bagus, bukan?

most pager

4
dr.

Di Linux man, Anda dapat melakukan man -K string (perhatikan huruf besar K) untuk melakukan pencarian brute force dari istilah yang diberikan

   -K, --global-apropos
          Search for text in all manual  pages.   This  is  a  brute-force
          search,  and is likely to take some time; if you can, you should
          specify a section to reduce the number of pages that need to  be
          searched.   Search terms may be simple strings (the default), or
          regular expressions if the --regex option is used.

sangat berguna ketika Anda tidak tahu ke mana harus mencari.

4
enzotib

Jangan abaikan halaman info. Banyak alat GNU memiliki halaman info yang jauh lebih luas daripada halaman manual. Seringkali, bagian LIHAT JUGA akan mengatakan "Dokumentasi lengkap untuk foo disimpan sebagai manual Texinfo. "Ini terutama benar untuk apa pun dalam paket coreutils GNU.

Juga, jika Anda adalah pengguna emacs, jangan lupa Anda dapat membaca halaman info dan manual tanpa meninggalkan editor Anda: M-x info dan M-x woman.

3
Steven D

Untuk halaman manual yang lebih lama dan lebih kompleks, saya merasa jauh lebih mudah untuk membacanya dari komputer (aneh, saya tahu) dan jadi saya memiliki fungsi-fungsi ini di .bashrc

# Print man pages 
manp() { man -t "[email protected]" | lpr -pPrinter; }

# Create pdf of man page - requires ghostscript and mimeinfo
manpdf() { man -t "[email protected]" | ps2pdf - /tmp/manpdf_$1.pdf && \
    xdg-open /tmp/manpdf_$1.pdf ;}
3
jasonwryan

Dari jawaban Kristof, jika Anda (mis.) Mengetik man -k chmod Anda akan mendapatkan daftar kemungkinan. Perhatikan angka dalam tanda kurung, itu berarti bagian yang harus dicari di halaman manual:

Pada UNIX Anda dapat mencoba:

man -s1 chmod itu akan menampilkan halaman manual untuk perintah chmod

man -s2 chmod itu akan menampilkan halaman manual untuk fungsi C lib chmod ()

Di Linux Anda harus mengubah -s untuk -S

2
jyz

Mirip dengan tetapi sedikit berbeda dari jawaban Rob Hoelz,

Tambahkan yang berikut di ~/.vimrc Anda:

let $GROFF_NO_SGR=1
runtime ftplugin/man.vim

Sekarang vimman adalah penampil halaman manual yang bagus, dan :Man dari dalam Vim (atau cukup memukul K di atas kata kunci ) adalah browser manual yang luar biasa.

2
ephemient

Lihat halaman manual dalam aplikasi grafis yang mudah digunakan:

konqueror man:(command)

Untuk daftar isi tingkat atas:

konqueror man:

Fitur:

  • Jika Anda memasukkan perintah yang memiliki kecocokan di banyak bagian, itu akan membawa Anda ke halaman disambiguasi
  • Ini adalah aplikasi grafis, jadi Anda tidak perlu mengingat urutan kunci rahasia untuk menavigasi halaman
  • Ini termasuk hyperlink ke halaman terkait (termasuk halaman "lihat juga")
  • Anda dapat membuka halaman terkait di tab terpisah
2
nobar

Dayum, semuanya! Ada apa dengan jawaban yang berbelit-belit ?! Apa pun yang terjadi pada kesederhanaan menjadi kunci kecemerlangan dan apa yang tidak? Sebagian besar kunci vi/vim Anda akan bekerja dengan sangat baik:

/ Atau ? - Cari maju atau mundur (seperti yang telah disebutkan beberapa orang). Dalam kasus yang pertama, huruf kecil n akan menggulir pertandingan ke depan, huruf kapital N akan mundur. Yang sebaliknya berlaku untuk yang terakhir-tanda tanya.

Pencarian sedikit lebih kompleks melalui ekspresi reguler. Perbedaan antara man (atau less) dan VIM adalah bahwa Anda harus menggunakan karakter escape () untuk mendeklarasikan karakter metakarakter dalam ekspresi Anda saat menggunakan yang terakhir Berita baiknya adalah ketika Anda menggunakan yang pertama (man atau less) - tidak begitu banyak. Jadi Anda dapat dengan mudah menggunakan ini saat mencari, misalnya, sebuah iptables halaman manual untuk beberapa istilah seperti: /(iptables|rules). Jika Anda tidak terbiasa dengan ekspresi reguler, ini berarti "Cari contoh kata iptables OR = rules ". Setelah memasukkan ini dan terus menekan n Anda akan menggulir hasil pencarian bergantian dengan hasil yang disorot dengan baik untuk Anda dengan warna yang berbeda (dua, sebenarnya. Haha). Jika Anda mencoba untuk menelusuri halaman dan ingin berkonsentrasi pada istilah atau konsep tertentu - Anda tidak akan melewatkan satu hal pun!

Dan, tentu saja, untuk navigasi yang lebih cepat, vi standbies Anda tetap ada (tidak ada permainan kata pun): gg atau G - awal/akhir dokumen; (Koreksi! Dalam man Anda dapat menggunakan semua kunci yang disebutkan di bawah ini tanpa menggunakan Ctrl. Itu hanya untuk vi saja). Ctrl + u or d - Gulir ke atas atau ke bawah; Ctrl + b or f - Hal yang sama, hanya dalam lompatan yang lebih besar. "Halaman mundur atau maju"; e atau y - gulir dengan satu baris, tapi saya pikir kebanyakan orang lebih suka menggunakan tombol panah saja. Namun, jika Anda ingin tetap "1337" dan "tidak pernah meninggalkan baris rumah" (seperti yang saya lakukan lol) -itu cara untuk pergi.

Yang ingin saya katakan adalah bahwa UNIX memiliki dua rasa utama dari kontrol program papan ketik, yang merupakan bagian dari pustaka readline: vi dan emacs. Tingkatkan daging Anda dalam salah satu (tapi, lebih baik-dalam keduanya) dan itu akan membuat hidup Anda jauh lebih rumit. Sebagian besar program CLI di UNIX menggunakan salah satunya. BASH menggunakan kontrol emacs secara default, tetapi dapat dengan mudah diatur ke "mode vi" dengan mengetikkan set -o vi. Hal yang sama dapat dikatakan untuk ekspresi reguler, tetapi itu akan jauh dari topik. Saya bahkan akan mengatakan bahwa keduanya adalah "lingua franca" dari UNIX.

2
Max

Untuk mencari saklar karakter tunggal secara efisien, misalnya -u, Anda sering dapat menggunakan:

/^ *-u($|\s)

Menghemat banyak waktu jika banyak opsi memiliki '-u' sebagai awalan.

1
matt

Sebagian besar dari kita menetapkan variabel PATH. Ini akan menunjukkan kepada Anda cara membuat jalur pencarian pria cocok dengan PATH pencarian perintah Anda.

Katakanlah Anda menambahkan jalur Anda untuk menyertakan utilitas pribadi, khusus untuk pekerjaan Anda, dan yang diinstal secara lokal, seperti export PATH=$PATH:~/bin:/workgroup/bin:/opt/local/bin:. Sebagai efek samping, man foo tidak akan menampilkan halaman manual yang disimpan di ~/man,/workgroup/man atau/opt/local/man.

Untuk mengatasi ini, saya menggunakan perintah manpath untuk secara otomatis mengatur jalur pencarian halaman manual. Sebagai contoh, my ~/.bashrc memiliki yang berikut ini. Ini berfungsi untuk saya pada seratus sistem berbeda yang menjalankan semuanya dari FreeBSD 4.x, Darwin dan CentOS 5:

### PATH & MANPATH
# My personal utilities
export PATH=$PATH:$HOME/bin

### Set the manpath based on the PATH, after man(1) parses man.conf
# - No need to modify man.conf or manually modify MANPATH_MAP
# - Works on Linux, FreeBSD & Darwin, unlike /etc/manpaths.d/
# See "SEARCH PATH FOR MANUAL PAGES" in man(1)
# Just set the man search path. Don't print output to screeen.
manpath >/dev/null

Beberapa sistem (Seperti Apple Leopard) mengatur MANPATH secara otomatis, tetapi itu berarti bahwa sistem Anda akan menggunakan variabel MANPATH alih-alih menggunakan manpath. Akibatnya, halaman manual untuk ' MacPorts (/ opt/local/man) diabaikan. Saya ingin mengendalikan ini sendiri, jadi saya membatalkan MANPATH:

unset MANPATH
manpath >/dev/null
1
Stefan Lasiewski

man -a printf hanya default ke man 1 di mesin Linux Mint saya. whatis printf memberi saya informasi terkait.

1
stu

Jika Anda mencari informasi mengenai bash builtin (seperti time, disown, set, atau [[), alih-alih slogging melalui detail bash info halaman atau man bash, kamu dapat masuk help {builtin-keyword} dan dapatkan informasi sintaksis dasar dengan cepat.

1
LawrenceC

Saya hanya menggunakan grep. Jika saya bertanya-tanya apa -s pilihan dari perintah read lakukan, saya akan mencoba perintah ini sampai saya mendapat jawaban:

info read |grep \\-s

man read |grep \\-s

help read |grep \\-s

Dalam hal ini hanya perintah info yang memberikan jawaban yang jelas. Jawaban luar biasa ini memberikan detail tentang berbagai sistem bantuan.

1
Cees Timmerman

Jika Anda kesal karena man printf memberi Anda printf (1) dan semua yang Anda inginkan adalah printf (3), Anda dapat memberi tahu pria Anda menginginkan printf dari bagian 3 dengan meletakkan bagian sebelum printf, seperti: man 3 printf, tanpa harus mengubah urutan direktori yang dipindai di variabel lingkungan MANPATH dan meletakkan yang untuk bahasa C sebelum yang untuk perintah Shell.

1
Li Lo

Dan bagi orang-orang yang suka membaca halaman info dan man di layar sentuh, Anda dapat mengirim info ke yad atau zenity dan memanfaatkan semua barang gtk3 seperti scroll asli. Juga berfungsi baik dengan layar dan mouse refular:

man cat |yad --text-info 

Anda juga dapat menggunakan zenity atau menambahkan opsi yad seperti:

man cat |yad --text-info --height=500 --width=800 --center --wrap --show-uri --no-markup &

Kiat: dengan menunjukkan uri yoh dapat mengklik tautan web di dalam halaman manual dengan mouse/jari.

0
George Vasiliou

enter image description here Jika Anda merasa sulit untuk membaca halaman manual karena semua teks berwarna putih, Anda dapat mewarnai mereka. Kebanyakan halaman manual dibuka dengan less. Untuk less, saya menggunakan pengaturan warna berikut dalam .bashrc from di sini :

man() {
    LESS_TERMCAP_md=$'\e[01;31m' \red
    LESS_TERMCAP_me=$'\e[0m' \
    LESS_TERMCAP_se=$'\e[0m' \
    LESS_TERMCAP_so=$'\e[01;44;33m' \yellow on blue
    LESS_TERMCAP_ue=$'\e[0m' \
    LESS_TERMCAP_us=$'\e[01;32m' \green
    command man "[email protected]"
}

Ini untuk bash dan zsh. Untuk most, fish, xterm dan rxvt lihat tautan di atas.

Untuk bacaan lebih lanjut:

0
vikram99

Perintah apropos (1) digunakan untuk mencari halaman manual. Namun, sebagian besar implementasi apropos (1) cari saja di bagian NAME, yang sangat terbatas.

NetBSD memiliki implementasi pencarian teks lengkap dari apropos (1), yang mampu mencari konten lengkap dari halaman manual. Ada juga antarmuka berbasis web untuk itu: man-k.org , yang dapat Anda coba.

0
Abhinav Upadhyay