O'Reilly logo

Bash. Receptury by Cameron Newham, JP Vossen, Carl Albing

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

14.3. Wyznaczanie bezpiecznej wartości $PATH

Problem

Chcemy mieć pewność, że wykorzystywana wartość zmiennej $PATH nie stanowi zagrożenia dla systemu.

Rozwiązanie

Na początku każdego skryptu należy zmiennej $PATH przypisać znaną poprawną wartość:

# Wyznaczenie bezpiecznej wartości zmiennej $PATH
PATH='/usr/local/bin:/bin:/usr/bin'
# Niemal na pewno zmienna jest już oznaczona jako eksportowana, ale dla pewności...
\export PATH

Inna metoda polega na wykorzystaniu narzędzia getconf, które wyznacza wartość zmiennej $PATH gwarantującą odnalezienie wszystkich standardowych narzędzi specyfikacji POSIX.

export PATH=$(getconf PATH)

Analiza

Przedstawione rozwiązanie ma dwie wady związane z przenośnością. Po pierwsze, składnia `` jest znacznie częściej stosowana ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required