Du kan ikke definitivt fortelle om en kommando er intern eller ekstern bare ved å se på den i en ledetekst. Her er grunnen:
Hva er interne og eksterne kommandoer?
* interne kommandoer er innebygd i selve skallet (som bash eller zsh). De er ikke separate programmer og utføres direkte innenfor skallprosessen. Eksempler:`cd`,` ekko`, `exit`.
* eksterne kommandoer er separate programmer som er lagret på filsystemet (vanligvis i kataloger som /bin, /usr /bin, etc.). Skallet må lokalisere og utføre disse filene. Eksempler:`ls`,` katt`, `grep`.
hvorfor du ikke kan fortelle bare ved å se:
1. Ingen visuell skille: Skall skiller ikke visuelt mellom interne og eksterne kommandoer i ledeteksten. De ser begge like ut når du skriver dem.
2. alias og funksjonsmaskering: Du kan lage aliaser eller funksjoner som maskerer eksterne kommandoer med samme navn. For eksempel kan du ha et alias som heter `ls` som kjører` ls -lrt`.
Hvordan finne ut om en kommando er intern eller ekstern:
1. `Type` Kommando: Den mest pålitelige metoden er å bruke kommandoen `type`. Den forteller deg hvilken type kommando og dens beliggenhet hvis den er ekstern.
`` Bash
type CD
Type LS
`` `
2. `Help` -kommando (for noen skjell): I noen skjell (som bash) kan du bruke `hjelp '-kommandoen. Hvis det er en intern kommando, vil den vise deg bruken. Hvis ikke, betyr det vanligvis at det er eksternt.
`` Bash
Hjelp CD
Hjelp LS
`` `
3. `som er kommando (for eksterne kommandoer): Kommandoen `hvilken 'hjelper deg med å finne den kjørbare filen til en * ekstern * kommando. Hvis det ikke finner det, kan det være en intern kommando eller ikke eksisterer.
`` Bash
som ls
`` `
Kort sagt, ikke stol på visuelle signaler. Bruk passende kommandoer for å bestemme om en kommando er intern eller ekstern.