Jaki jest najlepszy sposób wykonania skryptu podczas wchodzenia do katalogu?
Kiedy przeprowadzam się do nowego katalogu, chciałbym, aby bash wykonał skrypt projectSettings.bash podobnie jak RVM.
bash
shell-script
cd-command
MageProspero
źródło
źródło
Odpowiedzi:
Możesz utworzyć
cd
funkcję (ipop
ipushd
) i sprawić, że wykryje, czy przejdziesz do tego konkretnego katalogu.Nie rób tego w katalogach, których nie umieściłeś na białej liście, ponieważ bardzo ułatwiłoby ci to nakłonienie cię do uruchomienia dowolnego kodu - wyślij ci archiwum, więc rozpakuj je, przejdź do utworzonego katalogu i „ uruchomiliśmy teraz kod atakującego.
Nie polecam tego podejścia, ponieważ oznacza to, że skrypt zostanie wykonany, nawet jeśli wejdziesz do tego katalogu z jakiegoś powodu niezwiązanego z pracą nad projektem. Sugeruję posiadanie określonej funkcji, która zmienia katalog projektu i pobiera skrypt ustawień.
źródło
cd
i bez wątpienia jest lepszy sposób. Nawet użycie $ PROMPT_COMMAND jest lepsze!if [ -z $MYSETTINGS ] ; then export MYSETTINGS=1 ; echo your settings here ; fi
. Ma to na celu uniknięcie problemów na wypadek, gdybyś zrobił coś PATH = / mytools / bin: $ PATH inicjalizacja.direnv może być tym, czego szukasz.
Oto przykład zaczerpnięty z oficjalnej dokumentacji:
źródło