Finn ut om en kommando løser seg til et alias, en diskfil, en skallfunksjon, en innebygd kommando eller et reservert ord. Bruk type for å finne ut hvordan Linux-kommandoene utføres og forstå systemet ditt bedre.
Innholdsfortegnelse
Gjør mitt bud
Når vi åpner et terminalvindu og begynner å utstede kommandoer til Linux-datamaskinen vår, tenker vi sjelden på hvilke programvarekomponenter i operativsystemet som reagerer på kommandoene våre og utfører dem for oss. Vi skriver kommandoen, får resultatet og går videre med arbeidsmengden vår.
Å vite hvordan kommandoene utføres gir oss en bedre forståelse av måten Linux eller andre Unix-lignende operativsystemer er konstruert på. Å ta en titt under panseret kan gjøre oss til en mer informert sjåfør.
Instruksjonene vi sender til kommandolinjen er i en av følgende kategorier:
Alias: En bruker- (eller system-) definert kommando som får andre, vanligvis langdrakte eller komplekse, kommandosekvenser til å finne sted.
Diskfil: En binær kjørbar fil, for eksempel /usr/bin/top.
Shell-funksjon: En bruker- (eller system) definert funksjon som kan brukes på kommandolinjen eller inkluderes i skript.
Innebygd kommando: En kommando som utføres av skallet selv, for eksempel pwd.
Reservert ord: Et ord som er reservert av skallet som if og elif. De kalles også nøkkelord.
Type-kommandoen forteller oss hvilken kategori noen av Linux-kommandoene tilhører. Her er en rask veiledning for å forstå kommandoens utdata.
Typen Kommando
La oss rasle gjennom noen raske eksempler, for hver av kommandokategoriene.
type date
Dato-kommandoen er en kjørbar diskfil.
type ls
ls-kommandoen er et alias, som omslutter den underliggende ls-kommandoen til å bruke –color=auto-alternativet som standard.
type lowdown
Lowdown-kommandoen er en brukerdefinert funksjon som ble satt opp på pendleren som ble brukt til å undersøke denne artikkelen. Det gir et raskt øyeblikksbilde av noen systemressurser. Det er en kombinasjon av whoami , w , free og df .
type pwd
Pwd-kommandoen er en innebygd kommando i Bash-skallet.
type elif
elif-kommandoen er et reservert ord i Bash-skall.
Bruke flere kommandoer
Du kan gi type flere kommandoer for å identifisere samtidig.
type date top ls
Alternativet -t
Ingen av alternativene som typen vil godta har navn. Så vi kan få ut navneboken vår og døpe dem selv. Hvis du tenker på alternativet -t som står for «konsistent», vil du ikke ta mye feil. Det reduserer svarene fra type til enkeltordsvar.
type -t date
type -t pwd
type -t lowdown
Alternativet -a
La oss kalle dette alternativet «alle». Den viser alle plasseringene som kommandoen er plassert i. Merk at dette alternativet ikke vil fungere hvis du også bruker -p-alternativet.
Hvis du for eksempel har et alias med samme navn som den underliggende kommandoen, kan du få informasjon om aliaset og kommandoen.
type -a ls
Alternativet -f
Alternativet -f tvinger typen til ikke å søke etter bruker- eller systemdefinerte funksjoner. Tenk på dette alternativet som «funksjonssøk av.» Merk at hvis kommandoen er en funksjon, vil type rapportere at kommandoen ikke kan bli funnet.
type -f top
type -f lowdown
Alternativet -P
Hvis du bruker alternativet -P, vil type kun søke katalogene i $PATH. Så vi kan kalle dette alternativet «sti». Merk at dette alternativet bruker en stor «P.»
type -P date chmod adduser
Alternativet -p
Hvis du bruker alternativet -p, vil type bare svare hvis kommandoen er en harddiskfil. Merk at dette alternativet bruker en liten «p.»
type -p mount
type -p ls
type -p -a ls
type gir ikke noe svar for ls fordi det er et alias, og ikke en diskfil.
Men hvis vi inkluderer alternativet -a slik at typen ser etter alle forekomster av ls-kommandoen, viser den den underliggende diskfilen som ls-aliaset bruker.
Sammendrag
Det var fint og enkelt, men likevel opplysende.
Vi har en tendens til å tenke på alt vi skriver inn i et terminalvindu som en «kommando», og vi lar det være. Men faktisk implementeres kommandoer på en rekke måter i Linux-systemet. Og type lar deg finne ut hvilken det er.