Profil Ash / plik konfiguracyjny


26

Szukam sposobu na spersonalizowanie sesji Ash z własnymi zestawami aliases i tym podobne. Jaki jest odpowiednik bashrcplików Ash Bash ?

Odpowiedzi:


21

Ash najpierw czyta następujące pliki (jeśli istnieją):

  • System: /etc/profile
  • Użytkownik: ~/.profile

8
Pod warunkiem, że jest uruchamiany jako powłoka logowania, która nie jest domyślna (np. W Alpine Linux / Docker)
Jakub Holý

2
@ JakubHolý, czy znalazłeś sposób na uruchomienie skryptu profilu dla powłoki niezalogowanej?
David Lukac

@DavidLukac - Zobacz moją inną odpowiedź tutaj, aby uzyskać powłoki niezalogowane.
spechter

8

Powłoka niezalogowana odczyta również plik, jeśli jest określony w zmiennej środowiskowej ENV.

Jeśli więc jakoś to ustawisz (być może w twoim ~ / .profile, lub w innej „nadrzędnej” kontroli środowiska), to wszelkie przyszłe rozwidlone powłoki uruchomią ten skrypt. Bardzo przydatny w przypadkach niezalogowanych.

Trudno znaleźć dokumentację na ten temat, ale potwierdzono, że działa na busybox-w32 (działającym w systemie Windows). W rzeczywistości trudno w ogóle znaleźć dobrą dokumentację dotyczącą zestawu funkcji popiołu.

AKTUALIZACJA: Istnieje wiele wariantów popiołu na wolności. „ENV” może nie działać z wszystkimi z nich. Tutaj jest kilka informacji na temat wariantów: https://www.in-ulm.de/~mascheck/various/ash/

Istnieje sugestia, że ​​niektóre warianty popiołu mogą używać „SHINIT” zamiast ENV.


Nie działa dla mnie pod Alpine 3.7.
knite

@ Ash Ash Busybox (używany przez Alpine) używa ENV .
kirbyfan64sos

Czy zmienną ENV lub SHINIT należy tylko ustawić, czy ustawić na określoną wartość? Próbuję zmusić dokera do odczytu pliku .profile w katalogu /root/.profile bez jawnego rozpoczynania się od / bin / sh -l
Leon,

@Leon - ENV (a może SHINIT) musi zawierać pełną ścieżkę pliku do załadowania / źródła. Ale dotyczy to tylko uruchamiania wariantów powłoki „jesionowej” - nie zwykłych pocisków sh lub bash.
spechter
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.