Używając GNU bash (wersja 4.0.35 (1) -release (x86_64-suse-linux-gnu), chciałbym zanegować test za pomocą Wyrażeń regularnych. Na przykład, chciałbym warunkowo dodać ścieżkę do PATH zmienna, jeśli ścieżka nie jest już tam, jak w:Jak negować test za pomocą wyrażeń regularnych w skrypcie bash?
TEMP=/mnt/silo/bin
if [[ ${PATH} =~ ${TEMP} ]] ; then PATH=$PATH; else PATH=$PATH:$TEMP; fi
TEMP=/mnt/silo/Scripts:
if [[ ${PATH} =~ ${TEMP} ]] ; then PATH=$PATH; else PATH=$PATH:$TEMP; fi
TEMP=/mnt/silo/local/bin
if [[ ${PATH} =~ ${TEMP} ]] ; then PATH=$PATH; else PATH=$PATH:$TEMP; fi
export PATH
Jestem pewien, że istnieje milion sposobów, aby to zrobić, ale to, co chciałbym wiedzieć, czy warunkowe mogą być negowane jakoś, jak w (błędne):
TEMP=/mnt/silo/bin
if ![[ ${PATH} =~ ${TEMP} ]] ; then PATH=$PATH:$TEMP; fi
TEMP=/mnt/silo/Scripts:
if ![[ ${PATH} =~ ${TEMP} ]] ; then PATH=$PATH:$TEMP; fi
TEMP=/mnt/silo/local/bin
if ![[ ${PATH} =~ ${TEMP} ]] ; then PATH=$PATH:$TEMP; fi
export PATH
Dzięki
Oye vey! Właśnie wtedy, gdy bezpiecznie omijam międzygalaktyczne szaleństwo charakterystyczne dla perla, znajduję się zagubiony w przestrzeni basha (umieszczenie)! (Czuję strach ściskając moje wnętrzności jak pyton.) Dzięki! –