Du kan ikke definitivt fortælle, om en kommando er intern eller ekstern bare ved at se på den i en hurtig. Her er hvorfor:
Hvad er interne og eksterne kommandoer?
* interne kommandoer er indbygget i selve skallen (som bash eller zsh). De er ikke separate programmer og udfører direkte inden for shell -processen. Eksempler:`cd`,` echo`, `exit '.
* eksterne kommandoer er separate programmer gemt på filsystemet (normalt i mapper som /bin, /usr /bin osv.). Skallen skal lokalisere og udføre disse filer. Eksempler:`ls`,` kat`, `grep '.
Hvorfor kan du ikke fortælle bare ved at kigge:
1.. Ingen visuel sondring: Skaller skelner ikke visuelt mellem interne og eksterne kommandoer i prompten. De ser begge de samme ud, når du skriver dem.
2. alias og funktionsmaskering: Du kan oprette aliaser eller funktioner, der maske eksterne kommandoer med samme navn. For eksempel kan du have et alias ved navn 'ls', der kører 'ls -lrt'.
Sådan finder du ud af, om en kommando er intern eller ekstern:
1. `Type` -kommando: Den mest pålidelige metode er at bruge kommandoen `type '. Den fortæller dig typen af kommando og dens placering, hvis den er ekstern.
`` `bash
Type CD
Type LS
`` `
2. `Hjælp` -kommando (for nogle skaller): I nogle skaller (som bash) kan du bruge kommandoen `hjælp '. Hvis det er en intern kommando, viser den dig brug. Hvis ikke, betyder det normalt, at det er eksternt.
`` `bash
Hjælp cd
Hjælp LS
`` `
3. `hvilken kommando (til eksterne kommandoer): Kommandoen 'Hvilken' hjælper dig med at finde den eksekverbare fil i en * ekstern * kommando. Hvis det ikke finder det, kan det være en intern kommando eller ikke eksisterer.
`` `bash
som ls
`` `
Kort sagt skal du ikke stole på visuelle signaler. Brug de relevante kommandoer til at bestemme, om en kommando er intern eller ekstern.