Fråga:
Hur man ständigt definierar alias i Terminal
Elad Benda
2013-08-22 13:44:24 UTC
view on stackexchange narkive permalink

Jag vill lägga till alias i min miljö så att de är tillgängliga i alla terminalinstanser.

Jag har detta svar:

Ja, du kan lägga den i din .bashrc, .bash_profile eller .profile. På vissa system hämtar shell-init-skript också .bash_aliases eller .aliases, så om en av dessa filer finns på ditt system kan det vara meningsfullt att använda dem. dessa filer.

(Jag konfigurerade OS X för att se dolda filer, och ändå ser jag inget av ovanstående 4.)

Alias ​​fungerar bara i skalet (i Terminal), så vad menar du exakt med att lägga till alias i din OS X-miljö? Vill du göra ett alias tillgängligt för alla användare?
Jag menade att det kommer att ställas in för varje terminalinstans jag öppnar i framtiden
Jag har återställt din redigering eftersom den ändrade frågan.Om du fortfarande letar efter ett svar om hur du lägger till alias till zsh, vänligen ställ en ny fråga.
Sju svar:
Lri
2013-08-22 22:16:14 UTC
view on stackexchange narkive permalink

Om du använder bash, lägg till alias-kommandona till ~ / .bashrc och spara en sådan fil som ~ / .bash_profile:

 . ~ / .bashrc  

När bash anropas som ett interaktivt icke-inloggningsskal läser den .bashrc men inte .bash_profile. När bash är anropas det som ett interaktivt inloggningsskal läser det .bash_profile men inte .bashrc.

Terminal och iTerm öppnar nya skal som inloggningsskal som standard, så många OS X-användare använder bara .bash_profile som deras personliga konfigurationsfil. Till exempel tmux och skalläget i Emacs öppnar dock nya skal som icke-inloggningsskal.

.profil läses också av andra skal som ksh. Om både .bash_profile och .profile finns läser bash bara .bash_profile när den anropas som ett interaktivt inloggningsskal.

Se https://www.gnu.org/software/bash/manual /html_node/Bash-Startup-Files.html för mer information.

@EladBenda Om du använder `zsh`, lägg till aliaskommandona till` ~ / .zshrc`. '~ / .zshrc' läses av både (interaktiva) icke-inloggnings- och inloggningsskal, så du behöver inte källa från '~ / .zprofile'.
Har alltid velat veta skillnaden mellan .bash_profile och .bashrc, nu vet jag. Tack.
Ett bättre alternativ är att behålla alias är i en fil som heter ~ / .alias om du använder oh-my-zsh.Om den här filen inte finns kan den läggas till i hemmappen och skulle vara en dold fil.
mike
2013-08-22 16:54:57 UTC
view on stackexchange narkive permalink

Öppna ett nytt terminalfönster och gå till din hemkatalog (skriv bara cd och tryck på Enter).

Därefter skriver du ls .bash * och även ls .profile (observera att vart och ett av dessa filnamn börjar med en punkt). Om du har dessa filer (och du borde ha åtminstone .profilen) måste du redigera dem och lägga till dina alias till dem. Jag använder VI (eller VIM) för att redigera dessa filer, men du kan använda en annan redigerare (faktiskt skriver du i ditt terminalfönster öppnar .bash_profile öppnar den i TextEditor, vilket kan vara lite mer användar- vänlig om du inte är bekant med VI). Om du av någon anledning inte har någon av dessa filer skapar du en ny (och kallar den .bashrc), lägger till dina aliasrader i den (så detta blir ett kommando per rad, som du skulle skriva dem i skal) och spara sedan filen. Du kan sedan skapa symlänkar till .bash_profile och .profile genom att använda ln -s .bashrc .bash_profile; ln -s .bashrc .profil .

Vad jag vanligtvis gör är att jag gör .bashrc och .bash_profile symboliska länkar till .profile och bara behöver bara oroa mig för en fil.

Skillnaden mellan dessa filer är att bash kommer att källa olika beroende på om den har startats som ett inloggningsskal (vanligtvis skulle en inloggningsprocess starta skalet som ett inloggningsskal) eller bara som en interaktiv ( men inte inloggningsskal eller ett icke-interaktivt skal. Att ha alla tre filerna i huvudsak samma ger mig en konsekvent miljö oavsett hur jag startade.

Du får mer information genom att göra man bash , men var beredd, det är en lång mansida. Du kommer att kunna se vilken av de tre filerna (.bashrc, .profile och .bash_profile) som hämtas beroende på vilket läge som startades i.

Hoppas det hjälper - om inte, ge mig ett rop .

user172265
2016-02-21 23:29:23 UTC
view on stackexchange narkive permalink

Ange följande kommandon i Terminal:

  cd / etcsudo vi bashrc  

lägg till följande liknande:

  alias ll = "ls -lrt"  

Starta slutligen om terminalen.

BinaryMisfit
2013-08-22 16:05:01 UTC
view on stackexchange narkive permalink

Om du behöver den här maskinen måste du titta i mappen / etc . De kanske dock inte finns som standard, i vilket fall du helt enkelt behöver skapa dem i ovanstående mapp och starta om terminalen. Du kommer sannolikt att behöva använda sudo för att skapa dem eftersom mappen / etc ägs av root.

Om du behöver detta för varje terminal du öppnar behöver du inte göra det brett. Du kan skapa dessa filer i din egen hemmapp och den kommer att läsas av terminalen varje gång du startar en terminalsession.

Även som nämnts i kommentarer kommer du i allmänhet bara att kunna se dessa med terminal och med ls -lha .

ytbryan
2015-01-22 10:29:51 UTC
view on stackexchange narkive permalink

om du har installerat rubin, kolla in detta ruby-skript https://github.com/ytbryan/aka

Skriptet erbjuder funktioner som uthållighet och automatisk sourcing av punkt fil. Du kan hantera alias via terminal utan att bryta ditt arbetsflöde och öppna en textredigerare.

ansvarsfriskrivning: Jag skrev det här skriptet och använder det varje dag. Låt mig veta om det finns någon bugg / idé. :)

Phillip H. Blanton
2018-10-30 03:29:11 UTC
view on stackexchange narkive permalink

För er som letar efter ll-kommandot som i Linux BASH skapas det så här ...

alias ll = "ls -laF"

Lägg till den raden i .bashrc -filen och duplicera sedan .bashrc -filen som .bash_profile , så har du alltidoch för alltid.

För vad det är värt är ll på linux BASH bara ett alias för " ls -laF ".

Leo Boulanger
2018-05-22 15:04:13 UTC
view on stackexchange narkive permalink

Jag hade samma problem, att jag inte hade någon .bash eller .profil på min profilplats. äntligen hittade jag det i / etc

/ etc används hela systemet.Jag rekommenderar starkt att du inte redigerar dessa filer utan istället använder dina egna profilfiler i din hemmapp, t.ex.~ / .bash_profile.
Jag sömmar inte för att ha en ~ / .bash_profile, det var det första jag försökte och om jag skapar en så används den inte ens efter en omstart, jag tror att mina administratörer måste ha förhindrat det på något sätt.Jag använder nu zsh och .zshrc fungerar bra


Denna fråga och svar översattes automatiskt från det engelska språket.Det ursprungliga innehållet finns tillgängligt på stackexchange, vilket vi tackar för cc by-sa 3.0-licensen som det distribueras under.
Loading...