2013-03-28 9 views
5

jako część moich ustawień, często potrzebne w naszych environements, aby korzystaćuzyskanie funkcjonalności bash newgrp na starcie

newgrp voodoo 

Gdy próbuję go umieścić w pliku .bashrc, mam nieskończone pętle.

Jakieś pomysły na automatyczne ładowanie tej samej funkcjonalności podczas uruchamiania?

Odpowiedz

6

Istnieją 2 skrypty, które będą się uruchomić po uruchomieniu bash:

  • .bashrc dla powłok interaktywnych

  • .bash_profile dla powłok zgłoszeniowych

zależności od sposobu uruchomienia komenda newgrp jedno z nich zostanie wykonane:

  • newgrp - your_group rozpocznie nową powłokę logowania, a więc czytać .bash_profile

  • newgrp your_group (bez DASH) rozpocznie nowy, interaktywny czytanie Shell .bashrc

Jeśli nie źródło jednego pliku z drugiego powinieneś być w stanie ominąć rekursję, wybierając odpowiednią kombinację skryptu startowego i przełącznika newgrp

  • newgrp - ... w .bashrc zadziała

  • newgrp ... w .bash_profile zadziała

pozostałe dwie kombinacje doprowadzi do rekursji już opisane. Jeśli jeden z dwóch plików jest źródłem drugiego, jak to często bywa, i tak będziesz miał kłopoty.

BTW .: zamiast tego, jeśli .bash_profile nie istnieje, bash odczyta plik .profile. Po prostu wspominam o tym, ponieważ niektórzy eksperci zdołali od tego momentu pobrać swoje .bashrc.

Jeśli żadna z kombinacji nie ma zastosowania do konfiguracji, może być konieczne zastosowanie skryptów powłoki. Zmienna środowiskowa $GROUPS powinien zgłosić grupę jesteś członkiem, więc coś takiego:

[ "$GROUPS" = "200" ] || newgrp your_group 

lub cokolwiek id grupy voodoo to może pomóc.

+0

Wygląda na to, że wpisanie go do ~/.bash_profile powoduje wykonanie zadania. Dzięki. – user1134991

Powiązane problemy