Hur man använder kommandot Linux-typ

By rik

Utforska hur ett kommando hanteras – är det ett alias, en exekverbar fil, en skalfunktion, ett inbyggt kommando eller ett reserverat ord? Använd verktyget ’type’ för att analysera hur dina Linux-kommandon körs och få en djupare förståelse för ditt system.

Avslöja Kommandons Natur

När vi använder terminalen och skriver in kommandon, reflekterar vi sällan över vilka delar av operativsystemet som bearbetar och utför våra önskemål. Vi skriver kommandot, får resultatet och fortsätter vårt arbete.

Att förstå hur kommandon utförs ger oss en bättre insikt i hur Linux, och andra Unix-liknande system, är uppbyggda. En inblick ”under huven” kan göra oss till mer medvetna användare.

Instruktioner som ges till kommandoraden klassificeras i följande typer:

  • Alias: Ett anpassat kommando som kan representera en komplex sekvens av andra kommandon.
  • Exekverbar fil: En binär fil, som till exempel /usr/bin/top.
  • Skalfunktion: En användardefinierad funktion som kan användas i terminalen eller i skript.
  • Inbyggt kommando: Ett kommando som direkt utförs av skalet självt, till exempel pwd.
  • Reserverat ord: Ett ord som har en speciell betydelse för skalet, som ’if’ eller ’elif’.

Kommandot ’type’ identifierar vilken kategori ett specifikt Linux-kommando tillhör. Nedan följer en kort genomgång som hjälper dig förstå vad ’type’ visar.

’type’ i Aktion

Låt oss undersöka några exempel för varje kategori av kommandon.

type date

Kommandot ’date’ är en exekverbar fil.

type ls

Kommandot ’ls’ är ett alias som i grunden kör kommandot ’ls’ med flaggan ’–color=auto’ som standard.

type lowdown

’lowdown’ är en anpassad funktion skapad av användaren, som i detta fall används för att ge en snabb överblick av systemresurser. Den kombinerar outputen från kommandona ’whoami’, ’w’, ’free’, och ’df’.

type pwd

’pwd’ är ett inbyggt kommando i Bash-skalet.

type elif

’elif’ är ett reserverat ord i Bash-skalet.

Hantera flera kommandon

Du kan använda ’type’ med flera kommandon samtidigt för att identifiera dem.

type date top ls

Flaggan ’-t’

Inga av ’types’ flaggor har officiella namn. Men om vi tänker på ’-t’ som ”typ”, så får vi en bättre förståelse. Detta alternativ minskar outputen till ett enda ord.

type -t date
type -t pwd
type -t lowdown

Flaggan ’-a’

Vi kan kalla ’-a’ för ”alla”. Detta alternativ visar alla platser där kommandot kan hittas. Notera att detta alternativ inte fungerar tillsammans med ’-p’.

Om du till exempel har ett alias som har samma namn som det underliggande kommandot, så kan du se både aliaset och kommandot.

type -a ls

Flaggan ’-f’

Flaggan ’-f’ tvingar ’type’ att ignorera funktioner. Vi kan betrakta detta alternativ som ”funktioner av”. Om ett kommando är en funktion kommer ’type’ att rapportera att kommandot inte kan hittas.

type -f top
type -f lowdown

Flaggan ’-P’

När du använder ’-P’ kommer ’type’ enbart söka i de kataloger som finns i $PATH. Låt oss kalla detta alternativ ”väg”. Observera att det är ett versalt ’P’.

type -P date chmod adduser

Flaggan ’-p’

Med ’-p’ svarar ’type’ endast om kommandot är en fysisk fil. Det är ett gemensamt ’p’.

type -p mount
type -p ls
type -p -a ls

’type’ ger inget svar för ’ls’ eftersom det är ett alias, inte en fil.

Men om vi inkluderar ’-a’ så att ’type’ letar efter alla instanser av ’ls’, så visas den underliggande filen som aliaset använder sig av.

Sammanfattning

Detta var en enkel men insiktsfull genomgång.

Vi brukar tänka på allt vi skriver in i terminalen som ett kommando. Men i verkligheten är kommandon implementerade på många olika sätt i Linux-systemet, och ’type’ hjälper dig ta reda på vilket det är.