Een niet-ingestelde proxyvariabele kan in Fish het hele argument verwijderen
Zet de proxydiagnose in Fish tussen aanhalingstekens, zodat een niet-ingestelde of lege variabele het bijbehorende label niet uitwist.
In Fish kan deze diagnose alleen een nieuwe regel afdrukken:
echo HTTPS_PROXY=$HTTPS_PROXY
Fish-variabelen bevatten lijsten. Wanneer een variabele zonder aanhalingstekens aan tekst wordt gekoppeld, combineert Fish die tekst met elk lijstelement. Een niet-gedefinieerde variabele, of een variabele zonder elementen, levert geen combinaties op. Het hele argument verdwijnt, inclusief HTTPS_PROXY=.
Behoud het label door de uitbreiding tussen aanhalingstekens te zetten:
printf '%s\n' "HTTPS_PROXY=$HTTPS_PROXY"
Dit levert één argument, zelfs wanneer de variabele geen elementen heeft, zodat het label zichtbaar blijft. Aanhalingstekens rond een variabele met meerdere elementen verbinden de elementen met spaties; dat bewijst niet dat de variabele één bruikbare proxy-URL bevat.
Gebruik de querybewerking van Fish om te controleren of de variabele bestaat:
if set --query HTTPS_PROXY
printf '%s\n' "HTTPS_PROXY=$HTTPS_PROXY"
else
echo 'HTTPS_PROXY is not defined'
end
Een geslaagde query betekent dat de variabele is gedefinieerd, niet noodzakelijk dat hij een niet-lege waarde heeft of dat een client hem gebruikt. Exporteren en cliëntspecifieke proxy-detectie zijn afzonderlijke controles.