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.

Articles relacionats