No FreeBSD 12, usando o zsh
shell, notei essa diferença ao olhar para $path
(minúsculas) versus $PATH
(maiúsculas).
echo $path
/ sbin / bin / usr / sbin / usr / bin / usr / local / sbin / usr / local / bin / usr / home / freebsd / bin
echo $PATH
/ sbin: / bin: / usr / sbin: / usr / bin: / usr / local / sbin: / usr / local / bin: / usr / home / freebsd / bin
Uma saída é delimitada pelo caractere ESPAÇO, a outra pelo caractere COLON.
➥ Por que a diferença?
Essas duas variáveis são diferentes e separadas? Ou as letras minúsculas / maiúsculas acionam algum tipo de truque ou significado que eu não conheço?
Isso é um zsh
recurso? Ou um recurso do FreeBSD?
path
dentro zsh
não vai atualizar qualquer path
envvar: path=junk zsh -c 'echo $path; path=garbage; /usr/bin/printenv path'
.
for path in "$dir"/*
um código reflexivamente seguro para escrever.