Disclaimer :
Dit document is niet juist en is niet meer onderhouden.
|
Gentoo Man Gids
1.
Introductie
Het man programma
Iedereen heeft het ooit gebruikt in zijn/haar linux leven, namelijk het
man commando. Hoewel het man programma er op zich eerder simplistisch uit
ziet, heeft het een paar extra mogelijkheden dan enkel door de pagina scrollen.
Met dit document hopen wij die extra mogelijkheden wat meer naar voor te
rengen.
Man layout
Man pagina's zijn meestal opgeslagen in /usr/share/man.
Maar man zal alle man pagina's kunnen openen die zich in het MANPATH
bevinden. Gentoo slaat de MANPATH variabele in het algemeen op in
/etc/env.d/. Binnenin deze mappen bevinden zich andere mappen met
de manX structuur (waar X het sectienummer voorstelt). Een standaard man layout
kan er bijvoorbeeld zo uit zien:
Codevoorbeeld 1.1: Standaard man structuur |
$ ls /usr/share/man | grep man
man0p
man1
man1p
man2
man3
man3p
man4
man5
man6
man7
man8
man9
mann
|
Het eigenlijke sectienummer komt vrij gewoon over, maar merk op dat er een
mann en enkele man#p mappen zijn. De volgende tabel
omschrijft bovenstaande man pagina mappen en wat hun inhoud is.
| Man Map |
Beschrijving |
| man0p |
De p hier staat voor POSIX, net zoals bij da andere mappen met een p
in hun naam. Man pagina's in deze map beschrijven de functionaliteit van
verschilleden POSIX header bestanden.
|
| man1 |
Deze sectie is voor standaard commando's. De meeste programma's zullen hun
man pagina hier plaatsen, hierdoor zal deze map de grootste zijn.
|
| man1p |
Deze sectie beschrijft de POSIX versies van het commando beschreven in 1.
Aangezien dit enkel basis commando's beschrijft zal dit veel kleiner zijn
dan man1.
|
| man2 |
Deze sectie beschrijft Linux kernel system calls. |
| man3 |
Deze sectie beschrijft standaard C library functies. |
| man4 |
Deze sectie beschrijft speciale apparaten. Deze apparaten zijn gewoonlijk
kernel gericht maar Xorg-X11 heeft hier ook enkele manuals.
|
| man5 |
Deze sectie beschrijft zowel de opmaak van bepaalde bestanden als welke
bestanden een programma gebruikt. Je kent misschien wel verwijzingen zoals
man 5 portage voor een beschrijving van de portage
bestandsstructuur en man 5 make.conf voor de opmaak van
make.conf.
|
| man6 |
Deze sectie introduceert spelletjes en ander speciaal speelgoed. |
| man7 |
Deze sectie beschrijft standaarden en andere diverse items. Deze standaarden
kunnen dingen zoals charsets, SQL statements, ISO standaarden en regular
expressions bevatten.
|
| man8 |
Deze sectie beschrijft administratieve commando's (die meestal door de root
gebruiker worden uitgevoerd).
|
| man9 |
Deze sectie is enigszins dun, maar moet documentatie voor diverse delen van
de kernel bevatten.
|
| mann |
Deze sectie wordt vooral gebruikt door Tcl/Tk. De n staat voor
nieuw.
|
Ook al is dit geen uitgebreide en gedetailleerde lijst, het behandelt wel de man
pagina's waar de meeste mensen in geïnteresseerd zijn. Soms kan je net zo
gemakkelijk als deze lijst te weten komen wat een sectie inhoud door er
eenvoudigweg even naar te kijken. Het volgende hoodstuk zal het gebruik van man
bekijken met oog op deze layout.
2.
Werken met de man layout
Browsen door de man layout
Nu we de man layout begrijpen kunnen we enkele commando's bekijken. Soms moete
we bepalen welke man pagina we willen. De eerste manier is adresseren via
secties. Om een beschrijving van een sectie te vienden kan men man sectie
intro als volgt gebruiken:
Codevoorbeeld 2.1: man intro gebruiken om een sectie te beschrijven |
$ man 3 intro
INTRO(3) Linux Programmer's Manual INTRO(3)
NAME
intro - Introduction to library functions
DESCRIPTION
This chapter describes all library functions excluding the library
functions described in chapter 2, which implement system calls.
There are various function groups which can be identified by a
letter which is appended to the chapter number:
....
|
Jammer genoeg werkt dit niet altijd... Gelukkig voor ons is er een andere manier
om commando's te zoeken die meerdere resultaten terug geven (zoals een library
call en systeem commando die dezelfde naam hebben). Om dit te doen moeten we de
-K parameter gebruiken.
Codevoorbeeld 2.2: man -K gebruiken om op een string te zoeken |
$ man -K sleep
/usr/share/man/man0p/time.h.0p.gz? [ynq] n
/usr/share/man/man0p/unistd.h.0p.gz? [ynq] n
/usr/share/man/man2/alarm.2.gz? [ynq] n
/usr/share/man/man2/pause.2.gz? [ynq] n
/usr/share/man/man2/futex.2.gz? [ynq] n
/usr/share/man/man2/nanosleep.2.gz? [ynq] y
/usr/share/man/man2/semop.2.gz? [ynq] q
|
Soms is de output een pak langer, in dat geval kan het beter zijn om specifieke
woorden te specifiëren. Nu we weten hoe we een man pagina moeten vinden zullen
we bespreken hoe we een man pagina kunnen bekijken.
Man pagina's bekijken
Man pagina's bekijken kan op 2 manieren, de eerste is met man [man pagina
naam]. De tweede methode is met man [sectie] [man pagina naam]. Laten
we bc als voorbeeld nemen. We kunnen ofwel de eerste man pagina die
voor bc verschijnt (wat sectie 1 zou zijn omdat het de laagste sectie is
die een man pagina voor bc bevat):
Codevoorbeeld 2.3: De standaard man pagina bekijken |
$ man bc
bc(1) bc(1)
NAME
bc - An arbitrary precision calculator language
...
|
Maar stel dat ik de POSIX versie wil zien? Dan kan ik de tweede methode
gebruiken:
Codevoorbeeld 2.4: Een specifieke man pagina per sectie bekijken |
$ man 1p bc
BC(P) POSIX Programmer's Manual BC(P)
NAME
bc - arbitrary-precision arithmetic language
...
|
En de man pagina is verschenen. Nu we de man pagina hebben open staan is het
tijd om er mee aan de slag te gaan. Laten we even kijken hoe we gaan navigeren
en zoeken.
Navigatie en zoeken in man pagina's
Een man pagina navigeren is redelijk simpel. Om per lijn omhoog of omlaag te
bewegen gebruik je de pijltjes (omhoog en omlaag). Om per pagina omhoog of
omlaag te bewegen kan je de page up en page down toetsen gebruiken. Let wel op,
deze instructies nemen aan dat de omgevingsvariabele PAGER naar de
standaard pager less verwijst. Less heeft nog enkele navigatie
commando's, maar de pijltjestoetsen voldoen gewoonlijk:
Codevoorbeeld 2.5: Aanvullende less navigatie toetsen |
e ^E j ^N CR * Een lijn verder (of N lijnen).
y ^Y k ^K ^P * Een lijn terug (of N lijnen).
f ^F ^V SPACE * Een scherm verder (of N lijnen).
b ^B ESC-v * Een scherm terug (of N lijnen).
z * Een scherm verder (en zet schermen naar N).
w * Een scherm terug (en zet schermen naar N).
ESC-SPACE * Een scherm verder, maar stop niet aan het einde.
d ^D * Een half scherm verder (en zet een half scherm naar N).
u ^U * Een half scherm terug (en zet een half scherm naar N).
ESC-) RightArrow * Een half scherm naar rechts (of N posities).
ESC-( LeftArrow * Een half scherm naar links (of N posities).
F Altijd verder gaan; zoals "tail -f".
|
Zoeken is interessanter. De twee basis zoekfuncties zijn /patroon en
?patroon. De eerste versie zoekt voorwaarts, en de tweede zoekt
achterwaarts. patroon is een regular expression dat beschreven is
in man 7 regex. Laten we bijvoorbeeld zoeken naar de -D optie voor
emerge. Eerst openen we de emerge man pagina:
Codevoorbeeld 2.6: De emerge man pagina openen |
$ man emerge
|
In dat scherm druk je de / toets in zodat je op de prompt komt om
voorwaarts te zoeken en typ het zoekpatroon:
Codevoorbeeld 2.7: De prompt tevoorschijn halen |
gracefully handles updating installed packages to newer releases as well.
It handles both source and binary packages, and it can be used to create
binary packages for distribution.
EBUILDS, TBZ2S, CLASSES AND DEPENDENCIES
/\-D
|
Nota:
De \ is hier geplaatst om het - teken te ontsnappen wat anders
gebruikt zou worden als deel van een regular expression.
|
Dit zal de man pagina doorzoeken en het gezochte item tevoorschijn halen:
Codevoorbeeld 2.8: Voorwaartse zoekresultaten |
--deep (-D)
When used in conjunction with --update, this flag forces emerge to consider the entire
dependency tree of packages, instead of checking only the immediate dependencies of
the packages. As an example, this catches updates in libraries that are not directly
listed in the dependencies of a package.
|
Als je een zoekresultaat tegenkomt en wilt verder zoeken naar
dezelfde resultaten druk dan opnieuw op / en druk enter (voer dus geen
patroon in). Dit zal de zoekactie standaard naar het vorige patroon laten
zoeken. Bij sommige man pagina's zijn er opties weergegeven die laten uitgelegd
worden. Neem nu bijvoorbeeld man 5 portage. Het geeft een lijst weer van
de bestanden die gebruikt zijn en legt dan uit waarvoor ze gebruikt worden.
Enkele keren voorwaarts zoeken zou je er uiteindelijk brengen maar er is een
eenvoudigere methode, met de tweede methode, achterwaarts zoeken. Laten we dit
gebruiken om de omschrijving van package.mask te vinden. Open eerst
man 5 portage:
Codevoorbeeld 2.9: man 5 portage man pagina openen |
$ man 5 portage
|
Druk nu SHIFT+g. Dit brengt je naar het einde van de pagina:
Codevoorbeeld 2.10: Einde van de man pagina |
SEE ALSO
emerge(1), ebuild(1), ebuild(5), make.conf(5)
Portage 2.0.51 Jan 2004 PORTAGE(5)
lines 418-442/442 (END)
|
Nu gaan we verder en voeren het zoekpatroon in voor de ?patroon
achterwaartse zoekoptie. Druk eerst ? in om de prompt tevoorschijn te
halen en voer package.unmask in:
Codevoorbeeld 2.11: Het patroon specifiëren |
SEE ALSO
emerge(1), ebuild(1), ebuild(5), make.conf(5)
Portage 2.0.51 Jan 2004 PORTAGE(5)
?package.unmask
|
Druk op enter om het resultaat te tonen:
Codevoorbeeld 2.12: Het zoekresultaat |
package.unmask
Just like package.mask above, except here you list packages you want to unmask.
Useful for overriding the global package.mask file (see below). Note that
this does not override packages that are masked via KEYWORDS.
...
|
En de zoekopdracht is afgerond! Merk op dat net als bij / je zonder
patroon bij ? verder zoekt naar het laatst gebruikte patroon.
Besluit
Hier besluiten we de man gids. Hopelijk heeft deze gids wat meer licht kunnen
werpen op de navigatie van man pagina's en misschien zelfs enkele nieuwe tips
voor de meer ervaren gebruikers. Voor diegene die een alternatieve methode
verkiezen om man pagina's te navigeren zijn volgende ook mogelijk:
- app-text/man2html - een programma om man pagina's om te zetten
- app-text/tkman - een op tk gebaseerde man pagina browser
Ook de KDE web browser Konqueror kan de man pagina's verkennen met
behulp van de man: syntax in de adresbalk (bv. man:emerge).
The contents of this document are licensed under the Creative Commons -
Attribution / Share Alike license.
|