Skip to main content
  1. Comandi/

man - manual pages

·5 mins
Alessio Barnini
Author
Alessio Barnini
Table of Contents

Cosa fa
#

Visualizza la documentazione di riferimento ufficiale per comandi, file di configurazione, chiamate di sistema e librerie C. Usa less come pager — tutti i comandi di navigazione di less funzionano dentro man. La documentazione e' locale, aggiornata alla versione installata sul sistema, disponibile anche senza internet.

Sintassi
#

man [sezione] comando

Le 8 sezioni del manuale
#

Ogni sezione copre un tipo diverso di documentazione. Lo stesso nome puo' esistere in piu' sezioni con significati diversi.

SezioneContenutoEsempio
1Comandi utente — eseguibili normaliman 1 ls
2System calls — chiamate dirette al kernelman 2 fork
3Funzioni di libreria Cman 3 printf
4Device files — /dev/man 4 tty
5Formati di file e configurazioniman 5 passwd
6Giochi e screensaver
7Miscellanea — concetti, protocolli, standardman 7 signal
8Comandi di amministrazione sistema (root)man 8 useradd

Il motivo per cui esistono le sezioni: passwd e' sia un comando (sezione 1) che un file di configurazione (sezione 5). Senza specificare la sezione, man passwd apre la prima che trova — quasi sempre la sezione 1.

man passwd      # apre sezione 1 (comando)
man 5 passwd    # apre sezione 5 (struttura del file /etc/passwd)
man 5 crontab   # struttura del file crontab
man 5 sshd_config  # struttura del file di configurazione SSH

Comandi essenziali
#

ComandoFlagSignificato flagCosa fa
man lsApre il manuale di ls (sezione 1 di default)
man 5 passwdApre la sezione 5 di passwd (il file)
man -k password-kkeywordCerca "password" in tutte le descrizioni — identico ad apropos
man -f ls-ffullMostra tutte le sezioni disponibili per ls — identico a whatis
man -a passwd-aallApre tutte le sezioni disponibili in sequenza
man -P less man-PpagerSpecifica il pager da usare

Come leggere una pagina man
#

LS(1)                    User Commands                    LS(1)
^                                                          ^
nome(sezione)                                    ripetuto a destra

NAME
    ls - list directory contents       ← descrizione in UNA riga

SYNOPSIS
    ls [OPTION]... [FILE]...           ← sintassi
    ^   ^                  ^
[] = opzionale     ... = ripetibile
    └── nome comando

DESCRIPTION
    List information about the FILEs   ← spiegazione estesa

OPTIONS
    -a, --all
        do not ignore entries starting with .   ← ogni flag spiegato

EXAMPLES                               ← non sempre presente ma cercalo!

SEE ALSO
    dir(1), vdir(1), ls(1posix)        ← comandi correlati

Navigazione interna — identica a less#

Dentro man usi gli stessi comandi di less:

TastoCosa fa
/parolaCerca "parola" verso il basso
?parolaCerca "parola" verso l'alto
nProssima occorrenza della ricerca
NOccorrenza precedente
gVai all'inizio
GVai alla fine
SpacePagina successiva
bPagina precedente
qEsci
hHelp navigazione

La strategia per non impazzire
#

Le pagine man sono dense. Non leggerle dall'inizio — cerca quello che ti serve:

# Apri il manuale
man find

# Cerca subito il flag che vuoi
/-size
# n per scorrere le occorrenze
# q per uscire
# Non ricordi il nome del comando? Usa -k (= apropos)
man -k "copy file"
man -k checksum
man -k "change permission"

# Vuoi vedere tutte le sezioni disponibili per un nome?
man -f passwd
# passwd (1)   - change user password
# passwd (5)   - the password file

man -k vs apropos
#

Sono identici — man -k chiama apropos internamente:

man -k password    # identico a:
apropos password   # stesso risultato

Usa quello che preferisci. man -k e' utile quando sei gia' dentro il workflow di man.

L'alternativa moderna — cheat.sh
#

Se il man e' troppo denso e non hai tldr installato, puoi usare cheat.sh via curl. Fornisce solo gli esempi pratici piu' comuni in modo leggibile.

# Sintassi base
curl cheat.sh/comando

# Esempi
curl cheat.sh/unzip      # esempi per unzip
curl cheat.sh/tar        # esempi per tar
curl cheat.sh/find       # esempi per find

Funziona senza installare nulla, basta avere curl e una connessione internet. E' l'ideale quando cerchi un esempio "al volo" invece della specifica tecnica completa.

Casi d'uso pratici
#

# Su un server sconosciuto — mappa gli strumenti disponibili
man -k "packet capture"
man -k "network-defense monitor"
man -k forensic

# Struttura di file di configurazione che non ricordi
man 5 sshd_config    # configurazione SSH server
man 5 crontab        # formato file crontab
man 5 sudoers        # formato file sudoers
man 5 fstab          # formato file /etc/fstab

# Segnali Unix — tutti i SIGTERM, SIGKILL etc
man 7 signal

# Concetti di rete
man 7 tcp
man 7 ip

# Come funziona una chiamata di sistema
man 2 fork
man 2 exec

Scenario Reale
#

Sei su un server senza accesso a internet e devi configurare sshd_config per disabilitare il login con password. Non ricordi il nome esatto del parametro:

man 5 sshd_config
# poi dentro:
/PasswordAuth
# trovi: PasswordAuthentication yes|no
# con la spiegazione completa di cosa fa

Questo e' piu' affidabile di Google perche' e' la documentazione esatta della versione installata su quel sistema.

Dove l'ho usato
#

  • bandit-05 — flag di find per dimensione file

Note personali
#

Tip

La combinazione piu' utile: apri man comando, poi usa /flag per cercare esattamente il flag che ti serve. Non leggere tutto dall'inizio — e' lento e inutile.

Note

man -k e apropos sono identici. Se sei gia' nel flusso di man, usa -k. Se stai cercando da terminale, usa apropos — e' piu' immediato da ricordare.

Collegato a
#

  • system — categoria
  • less — pager usato da man per la navigazione
  • aproposman -k e' identico ad apropos
  • whatisman -f e' identico a whatis
  • help — alternativa rapida per i flag

Related