Ønsker du å finne ut hvem som er innlogget på din Linux-maskin? Da trenger du ikke å røre en finger, men heller benytte deg av `pinky` kommandoen.
Mange systemadministratorer bruker ofte `finger` kommandoen for å hente informasjon om brukerne som er logget på en Linux eller Unix-lignende datamaskin. Dette er en grei løsning, men `finger` er ofte ikke installert som standard på mange systemer. Det er ikke uvanlig å komme over systemer der denne kommandoen ikke er tilgjengelig.
Istedenfor å installere `finger`, forutsatt at du har rettigheter til det, kan du heller bruke `pinky`, en moderne og lettvektsversjon av `finger`. Den er som regel forhåndsinstallert på de fleste Linux-distribusjoner, inkludert Ubuntu, Manjaro og Fedora.
En enkel kommando
Som forventet har `pinky` en del kommandolinjealternativer, men overraskende nok brukes alle disse til å filtrere ut uønsket informasjon fra rapportene som genereres. Du kan altså skreddersy utdataene slik at de kun viser den informasjonen som er relevant for deg.
Dersom `pinky` allerede er en lettvektskommando, blir den enda lettere når du har fjernet informasjonen du ikke er interessert i.
Slik bruker du `pinky`
Den enkleste måten å bruke `pinky` på er å skrive inn kommandoen i terminalen og trykke Enter:
pinky
Dette gir deg en standard «kortformat»-rapport.
Kortformatrapporten inneholder følgende kolonner:
Innlogging: Brukernavnet til den innloggede brukeren.
Navn: Fullt navn på brukeren, hvis kjent.
TTY: Terminaltypen brukeren er logget inn på. Dette vil som regel være en `pts` (pseudo-teletype). `:0` indikerer det fysiske tastaturet og skjermen som er koblet til maskinen.
Inaktiv: Hvor lenge brukeren har vært inaktiv. Vises som `?????` dersom brukeren kjører under en X-windows Display Manager, som ikke gir denne informasjonen.
Når: Tidspunkt og dato for innlogging.
Hvor: Stedet brukeren er logget inn fra. Ofte er dette IP-adressen til en ekstern maskin. `:0` indikerer det fysiske tastaturet og skjermen til Linux-maskinen.
Noen ganger kan ikke `pinky` fylle ut alle kolonnene, da den ikke har all informasjonen. For eksempel, hvis systemadministratoren ikke har lagt inn fullt navn for en bruker, som `dave`, vil `pinky` vise `dave` i stedet for et fullt navn.
Rapport for enkeltbruker
Som standard viser `pinky` informasjon om alle innloggede brukere. For å se informasjon om en enkelt bruker, spesifiser brukernavnet etter kommandoen:
pinky mary
I dette tilfellet viser `pinky` kun informasjon om brukeren med brukernavnet `mary`.
Fjerne kolonneoverskrifter
For å fjerne kolonneoverskriftene fra kortformatrapporten, bruk `-f` flagget:
pinky -f
Dette vil fjerne kolonneoverskriftene fra rapporten.
Fjerne Navn-kolonnen
Flagget `-w` sørger for at `pinky` utelater `Navn`-kolonnen.
pinky -w alec
Den resulterende rapporten vil ikke inneholde `Navn`-kolonnen.
Fjerne Navn- og Hvor-kolonnene
Flagget `-i` får `pinky` til å utelate både `Navn` og `Hvor`-kolonnene.
pinky -i robert
Rapporten inneholder nå ikke kolonnene `Navn` og `Hvor`.
Fjerne Navn, Inaktiv og Hvor-kolonnene
For å fjerne enda mer informasjon, kan du bruke `-q` flagget for å utelate kolonnene `Navn`, `Inaktiv` og `Hvor`.
pinky -q john
`pinky` fjerner dermed kolonnene `Navn`, `Inaktiv` og `Hvor` fra rapporten. Nå er vi nede i tre kolonner. Fjerner vi enda mer, er det knapt nok igjen en rapport.
Langformatrapporten
Flagget `-l` (lang format rapport) gir mer detaljert informasjon om brukerne i rapporten. Du må spesifisere brukernavnet etter kommandoen.
(Dette er ett av de to kommandolinjealternativene med navn. Det andre er flagget `-s` (kortformatrapport). Siden standard utdata er kortformatrapport, vil ikke `-s` flagget ha noen effekt.)
pinky -l mary
Langformatrapporten inneholder en del tilleggsinformasjon.
Informasjonen i langformatrapporten er:
Påloggingsnavn: Brukernavnet til den innloggede brukeren.
I det virkelige liv: Det fulle navnet på brukeren, hvis kjent.
Katalog: Brukerens hjemmekatalog.
Skall: Skallet brukeren bruker.
Prosjekt: Innholdet i brukerens `~/.project`-fil, hvis den finnes.
Plan: Innholdet i brukerens `~/.plan`-fil, hvis den finnes.
Tanken bak `~/.project`-filen var at den skulle inneholde en kort beskrivelse av prosjektet eller arbeidsoppgaven brukeren arbeidet med. På samme måte skulle `~/.plan`-filen inneholde en kort beskrivelse av selve arbeidsoppgaven for det prosjektet. Dette skulle gi ledere og interesserte en oversikt over hva en bruker jobbet med og hvilket prosjekt arbeidet tilhørte. Denne praksisen brukes sjelden i dag, og disse feltene vil som regel være tomme for de fleste brukere.
La oss se på Alec:
pinky -l alec
Alec har verken en `~/.plan`-fil eller en `~/.project`-fil.
Fjerne Katalog og Skall-linjene
For å fjerne informasjonen om hjemmekatalog og skall fra langformatrapporten, bruk flagget `-b`.
pinky -l -b robert
Linjene som rapporterer om hjemmekatalog og skall fjernes fra rapporten.
Fjerne Prosjekt-filen
For å fjerne prosjekt-linjen fra langformatrapporten, bruk `-h` flagget.
pinky -l -h mary
Innholdet i `~/.project`-filen rapporteres ikke.
Fjerne Plan-filen
For å fjerne plan-linjen fra langformatrapporten, bruk flagget `-p`.
pinky -l -p mary
Innholdet i `~/.plan`-filen rapporteres ikke.
Hvorfor alle disse utelatelsesalternativene?
Hvorfor har en kommando som genererer rapporter så mange alternativer for å fjerne informasjonsbiter? Det lar deg fokusere på den informasjonen du virkelig trenger. Du kan altså skille det vesentlige fra det uvesentlige og selv definere hva som er hva.