Una variabile proxy non impostata può rimuovere l'intero argomento in Fish
Metti tra virgolette la diagnostica del proxy in Fish, così una variabile non impostata o priva di elementi non cancella l'etichetta che le è associata.
In Fish, questa diagnostica può stampare solo una nuova riga:
echo HTTPS_PROXY=$HTTPS_PROXY
Le variabili di Fish contengono liste. Quando una variabile senza virgolette viene accostata a un testo, Fish combina quel testo con ogni elemento della lista. Una variabile non definita, o definita senza alcun elemento, non produce alcuna combinazione. Sparisce l'intero argomento, compreso HTTPS_PROXY=.
Conserva l'etichetta mettendo l'espansione tra virgolette:
printf '%s\n' "HTTPS_PROXY=$HTTPS_PROXY"
In questo modo si passa un solo argomento anche quando la variabile non ha elementi, quindi l'etichetta resta visibile. Le virgolette attorno a una variabile con più elementi ne uniscono gli elementi con spazi; non dimostrano che la variabile contenga un unico URL proxy utilizzabile.
Per verificare se la variabile esiste, usa l'operazione di interrogazione di Fish:
if set --query HTTPS_PROXY
printf '%s\n' "HTTPS_PROXY=$HTTPS_PROXY"
else
echo 'HTTPS_PROXY is not defined'
end
Un'interrogazione riuscita significa che la variabile è definita, non necessariamente che contenga un valore non vuoto o che un client la userà. Esportazione e individuazione del proxy specifica del client sono controlli separati.