Una variable de proxy no definida pot eliminar tot l'argument a Fish
Posa el diagnòstic del proxy entre cometes a Fish perquè una variable no definida o sense elements no esborri l'etiqueta que hi va adjunta.
A Fish, aquest diagnòstic pot imprimir només una línia nova:
echo HTTPS_PROXY=$HTTPS_PROXY
Les variables de Fish contenen llistes. Quan una variable sense cometes s'uneix a text, Fish combina aquest text amb cada element de la llista. Una variable no definida, o definida sense cap element, no produeix cap combinació. L'argument sencer desapareix, incloent-hi HTTPS_PROXY=.
Conserva l'etiqueta posant l'expansió entre cometes:
printf '%s\n' "HTTPS_PROXY=$HTTPS_PROXY"
Això proporciona un argument fins i tot quan la variable no té elements, de manera que l'etiqueta continua visible. Posar entre cometes una variable amb diversos elements els uneix amb espais; no demostra que la variable contingui un únic URL de proxy utilitzable.
Per comprovar si la variable existeix, fes servir l'operació de consulta del Fish:
if set --query HTTPS_PROXY
printf '%s\n' "HTTPS_PROXY=$HTTPS_PROXY"
else
echo 'HTTPS_PROXY is not defined'
end
Una consulta correcta vol dir que la variable està definida, però no necessàriament que contingui un valor no buit ni que un client la faci servir. Exportar i descobrir el proxy específic de cada client són comprovacions separades.