W Fish ta diagnostyka może wypisać tylko nowy wiersz:

echo HTTPS_PROXY=$HTTPS_PROXY

Zmienne w Fish przechowują listy. Gdy zmienna bez cudzysłowów zostanie dołączona do tekstu, Fish łączy ten tekst z każdym elementem listy. Niezdefiniowana zmienna lub zmienna bez elementów nie tworzy żadnych połączeń. Znika cały argument, w tym HTTPS_PROXY=.

Zachowaj etykietę, ujmując rozwinięcie w cudzysłowy:

printf '%s\n' "HTTPS_PROXY=$HTTPS_PROXY"

Daje to jeden argument nawet wtedy, gdy zmienna nie ma elementów, więc etykieta pozostaje widoczna. Cudzysłowy wokół zmiennej z wieloma elementami łączą jej elementy spacjami; nie dowodzą, że zmienna zawiera jeden użyteczny adres URL proxy.

Aby sprawdzić, czy zmienna istnieje, użyj operacji zapytania Fish:

if set --query HTTPS_PROXY
    printf '%s\n' "HTTPS_PROXY=$HTTPS_PROXY"
else
    echo 'HTTPS_PROXY is not defined'
end

Udane zapytanie oznacza, że zmienna jest zdefiniowana, ale niekoniecznie że ma niepustą wartość lub że klient jej użyje. Eksport i wykrywanie proxy właściwego dla klienta to osobne kontrole.

Powiązane artykuły