Om du har läst några instruktioner på webben för hur man installerar något, har du förmodligen läst ett uttalande om att lägga till något till din $PATH. Mer specifikt inkluderade det förmodligen en exportsats, en katalog och sedan en fil som kommandot skulle skickas till, eller hur?
I själva verket kan du se ett direktiv som detta:
Se till att
~/.composer/vendor/binkatalogen finns i ditt systems "PATH".
Vilket betyder att du bör göra något i stil med följande:
export PATH="$PATH:$HOME/.composer/vendor/bin"
Men om du är ny på att arbeta i terminalen, än mindre miljövariabler, hur ska du veta hur man översätter uttalandet till kommandot ovan?
Skal i macOS
Innan du går in på vad ett skal är, är det viktigt att notera att terminalen i grunden är sättet att komma åt filsystemet genom en rad kommandon och textbaserade program.
De är populära särskilt i *nix-baserade operativsystem, via Windows har det också (om du någonsin använt MS-DOS eller kommandotolken så vet du vad jag menar).
För det här inlägget pratar jag i första hand om *nix-baserade system och, ännu mer specifikt, macOS. Så när det kommer till att prata om skal i macOS, pratar du om programmet som tolkar kommandona som skrivs in i terminalen.
Det är allt, inget fancy.
Så vad är de olika skalen i macOS? Det finns vanligtvis fyra skal som följer med operativsystemet (även om du kan installera fler, om du vill).
macOS-skal
Dessa skal inkluderar bash, ksh, tcsh och zsh . Nej, vissa människor kommer att hävda att det ena skalet är bättre än det andra medan andra (som jag själv) är lite ambivalenta. Jag tenderar att hålla fast vid Bash eftersom det är det jag har använt längst och vet bäst (även om jag kommer att säga Oh My Zsh., som jag kommer att ta upp ett ögonblick, har varit trevligt att pyssla med också).
För de flesta macOS-installationer är detta standardskalet. Detta betyder att alla inställningar kommer att sparas i en .bash_profile -fil. Så varje gång du vill lägga till något i din sökväg är det här filen som det är skrivet i. Det finns andra filer, men de ligger utanför omfattningen av detta inlägg.
Förstå profiler
Närhelst du arbetar i en terminal och du gör en ändring i filen som är associerad med den terminalsessionen (det vill säga instansen av terminalen du har öppen), måste du säga åt operativsystemet att ladda dessa ändringar via följande kommando:
$ source ~/.profile
…där ~/.profile är skalets profilfil. Observera dock att för många skal är detta endast konsekvent för terminalens session. Det betyder inte att det kommer att kvarstå nästa gång du öppnar terminalen än mindre ditt operativsystem.
Detta beror på att ett givet skal kan ha en hierarki, så att säga, av filer. För Bash inkluderar detta .bashrc, .bash_profile och .profile. Dessutom kanske du kan definiera inställningarna i ditt operativsystems terminalinställningar.
Om du till exempel använder Linux:
Om du å andra sidan använder macOS, måste du använda en av de tidigare nämnda filerna. Med bash som exempel kommer jag att bryta ner hur de alla passar ihop:
- .profile är inloggningsskriptet. Om en inte finns kan du skapa en och den kommer att utföra de kommandon du har när du loggar in på sessionen. Om du vill ha något exekverat eller något tillgängligt precis under inloggningen är det här filen. Detta är också systemomfattande.
- .bashrc är en fil som läses under en terminalsession (eller till och med när GUI används). Tänk att detta är både inloggning och interaktivt. Så om du vill ha något tillgängligt under inloggning och när du använder operativsystemet är det här en fil du kan använda.
- .bash_profile kan köras under inloggning och är tillägnad en individs konto.
Finns det mer?
Eftersom detta är en snabbguide, ja, det finns mer. Du kan läsa dem på mansidan som är specifik för din terminal. För bash, ange bara
$ man bash
I din terminal kommer du att få den kompletta guiden till terminalen.
Som en take away, här är vad du kan snubbla över när det kommer till profilfilerna:
- /bin/bash. Bash körbara
- /etc/profile. Den systemomfattande initieringsfilen, exekveras för inloggningsskal
- ~/.bash_profile. Den personliga initialiseringsfilen, körs för inloggningsskal
- ~/.bashrc. Den individuella per-interactive-shell sta. rtup-fil
- ~/.bash_logout. Rengöringsfilen för individuella inloggningsskal, exekveras när ett inloggningsskal avslutas
- ~/.inputrc. Individuell readline-initieringsfil
Nästa gång du behöver exportera en sökväg, ställa in ett värde eller arbeta med din profil bör detta förhoppningsvis ge dig en vägledning om var ändringen behöver göras (och hur du kan göra det).

