2012-01-23 12 views
109

Jestem na OSX i muszę umieścić coś takiego, alias blah="/usr/bin/blah" w pliku konfiguracyjnym, ale nie wiem, gdzie znajduje się plik konfiguracyjny.Jak utworzyć alias Bash?

+1

Czy to znaczy '.bash_profile'? – Kjuly

+0

W sposób styczny, ten konkretny alias jest w zasadzie zbędny, chyba że specjalnie próbujesz przesłonić jego rozdzielczość 'PATH' dla tego konkretnego polecenia. Jeśli '/ usr/bin' jest w twoim' PATH' (co tak naprawdę musi być), to 'blah' będzie uruchamiany stamtąd dobrze bez tego samego pseudonimu, chyba że jest również powiedziane'/usr/local/bin/blah 'i'/usr/local/bin' jest przed '/ usr/bin' w twoim' PATH' * ale * nadal chcesz preferować '/ usr/bin/blah' i nie może z jakiegoś powodu po prostu usunąć lub zmienić nazwę'/usr/local/bin/blah'. – tripleee

+0

Mimo to jest to wątpliwe, hackowe rozwiązanie, które powinno zawierać duży, gruby, brzydki komentarz z komunikatem ostrzegawczym informującym o tym, jak to ugryzie twoją kształtną dolną część brzucha, i innym powiedzeniem "Tak ci powiedziałem" za każdym razem, kiedy to się stało. – tripleee

Odpowiedz

171

Możesz dodać alias lub grupę function w pliku skryptu startowego. Zwykle jest to plik .bashrc, .bash_login lub .profile w twoim katalogu domowym.

Ponieważ te pliki są ukryte, musisz je wykonać pod numerem ls -a. Jeśli go nie masz, możesz go utworzyć.


Jeśli dobrze pamiętam, kiedy kupił mój Mac, plik .bash_login nie było. Musiałem stworzyć go dla siebie, aby umieścić w nim prompt info, alias, , , , .

Oto kroki, jeśli chcesz utworzyć:

  1. Uruchom Terminal
  2. Rodzaj cd ~/ aby przejść do katalogu domowego
  3. Rodzaj touch .bash_profile aby utworzyć nowy plik.
  4. Edit .bash_profile ze swoim ulubionym edytorze (albo po prostu wpisać open -e .bash_profile aby otworzyć go w TextEdit.
  5. Rodzaj . .bash_profile przeładować .bash_profile i zaktualizować każdy alias dodania.
+3

Awesome, thanks @jaypal! Czy polecenie "source .bash_profile" jest alternatywą dla kroku 5? –

+9

Tak, na moim OSX Mavericks nie było '.bash_profile' w moim domowym reż. Tworzenie, dodawanie do niego aliasu, a następnie inicjowanie go za pomocą '. .Komenda bash_profile' działała. –

+0

.bash_profile działa dla mnie! :) .bashrc nie działa na El Capitan – Parth

3

Jeśli umieścisz blah="/usr/bin/blah" w twojej ~/.bashrc następnie można użyć $blah w powłokę logowania jako substytut wpisując /usr/bin/blah

+0

Znak dolara nie jest w żaden sposób konieczny, użyteczny ani poprawny tutaj. – tripleee

2

Prawdopodobnie chcesz edytować .bashrc plik w katalogu domowym.

9

W moim pliku .bashrc następujące linie były tam domyślnie:

# Alias definitions. 
# You may want to put all your additions into a separate file like 
# ~/.bash_aliases, instead of adding them here directly. 
# See /usr/share/doc/bash-doc/examples in the bash-doc package. 

if [ -f ~/.bash_aliases ]; then 
    . ~/.bash_aliases 
fi 

Dlatego na mojej platformie .bash_aliases jest domyślnie plik używany dla aliasów (i ten, którego używam). Nie jestem użytkownikiem OS X, ale domyślam się, że jeśli otworzysz plik .bashrc, będziesz w stanie określić, jaki plik jest zwykle używany dla aliasów w twojej platformie.

+2

to nie działa dla mnie na osx ale działa w Ubuntu – toobsco42

+0

To działa mi ładnie, OS X 10.10 – kibin

+0

Jeśli profil nie ładuje się automatycznie po otwarciu okna terminala, prawdopodobnie brakuje go uprawnienia do wykonywania. To polecenie naprawi to i powinno automatycznie załadować dla przyszłych sesji: 'chmod u + x .bash_profile' – Mischinab

5

Plik konfiguracyjny skryptów i programów to ~/.bashrc, a plik konfiguracyjny, który zostanie załadowany podczas korzystania z terminala, to ~/.bash_login.

Myślę, że najlepszym sposobem jest po prostu mieć wszystko w ~/.bashrc.

dla konkretnego zapytania wpisz (ten zastąpi wszelkie istniejące ~/.bashrc):

echo "alias blah=\"/usr/bin/blah\"" >>~/.bashrc 

do terminalu i pliku ~/.bashrc zostanie utworzony z nowymi alises. Potem wystarczy edytować plik, aby dodać nowe aliasy, funkcje, ustawienia itp

+3

Nie powinieneś używać '>>' zamiast '>', aby dołączał do pliku, zamiast zastępować wszystko w nim? – Jonny

7
cd /etc 
sudo vi bashrc 

Dodaj następujący jak:

alias ll="ls -lrt" 

Wreszcie ponownie uruchomić Terminal.

+0

Po dodaniu aliasu. Uruchom "źródło" w pliku ".bash_profile". Ex: source ~/.bash_profile (polecenie aktywujące/przeładowujące aliasy basha) – UIResponder

13

Po prostu otwiera zshrc z sublime i edytować.

subl .zshrc 

i dodać na wzniosłe:

alias blah="/usr/bin/blah" 

Run to w terminalu:

source ~/.bashrc 

zrobić.

+0

To jest zagubione. Jeśli twoją powłoką jest Bash, wiele innych odpowiedzi na tej stronie jest bardziej szczegółowych i pomocnych. Jeśli użyjesz Zsh zamiast Basha, oczywiście powinieneś 'source .zshrc' na końcu załadować zmiany wprowadzone do aktualnie uruchomionej instancji powłoki. – tripleee

0
  1. Idź do domu
  2. Otwarte .bashrc
  3. Tworzenie aliasu na dole pliku

    alias alias_name='command to do' 
    eg: alias cdDesktop='cd /Desktop' 
    
  4. zapisać plik

  5. źródło .bashrc

    source ~/.bashrc 
    
  6. Otwórz terminal (Ctrl + Alt + T) & typ cdDesktop & naciśnij enter

Powiązane problemy