Mogę bez problemu zmienić wiersz polecenia bash dla terminala dla zwykłego użytkownika. (W moim przypadku zmodyfikowałem zmienną $ PS1 w / etc / bashrc.) Jednak ta zmiana nie modyfikuje wiersza poleceń, gdy ktoś podnosi uprawnienia do rootowania sudo -s
.
Czy ktoś wie, gdzie preferencje wiersza polecenia są przechowywane na komputerze macOS Sierra (10.12.5) dla użytkownika administratora, który podniósł swoje uprawnienia do rootowania sudo -s
?
Próbowałem zmodyfikować następujące pliki ...
- /var/root/.bash_profile
- /var/root/.bash_rc
- / var / root / bash_rc
- /var/root/.profile
- ~ / .profile
Próbowałem także użyć polecenia export PS1="Some prompt here# "
, które tymczasowo zmienia monit o rootowanie, ale nie blokuje się ono po zakończeniu sesji i uruchomieniu nowej.
terminal
command-line
bash
root
Tim Dearborn
źródło
źródło
Odpowiedzi:
Z
sudo
instrukcji:Interaktywna powłoka odczytuje wywołującego użytkownika
.bashrc
. Tak więc rozwiązanie Tony'ego Williamsa zadziałałoby, jeśli jest w twoim.bashrc
. Ale rozwiązanie da4 powinno również działać, jeśli zostanie umieszczone w twoim.bash_profile
.źródło
Dodaj
SUDO_PS1
zmienną środowiskową do swojej,~/.bash_profile
a następnieexport
do zmiennej, na przykład:export SUDO_PS1="\[\h:\w\] \u\\$ "
Pamiętaj jednak, że spowoduje to zmianę monitu użytkownika root, gdy pojawi się on po podniesieniu uprawnień za pośrednictwem
sudo
.Dobra lista
prompt
zmiennych znajduje się tutaj.źródło
export
w istniejącą powłokę, to tak, zmiany nie zostaną zachowane. Musisz dodać to do swojego~/.bash_profile
. Testowane i potwierdzone 10.11.6.Zakładam, że tak naprawdę nie logujesz się na komputerze Mac,
root
ponieważ włączenie logowania roota jest naprawdę złą rzeczą .Używasz więc polecenia
sudo -s
do otwarcia powłoki roota z własnego loginu. W tych okolicznościach prowadzony profil jest Twój. Najlepszym sposobem na wprowadzenie jakichkolwiek zmian, takich jak monit, jest na przykład użycieif
w swoim profiluW tym przykładzie najwyższy PS1 jest dla roota i ustawia monit na czerwony, a drugi PS1 jest dla każdego innego użytkownika, np. Ciebie. Możesz także wprowadzić dowolne inne zmiany środowiska
if
.źródło