W FreeBSD 12, używając zshpowłoki, zauważyłem tę różnicę, patrząc na $path(małe litery) w porównaniu z $PATH(wielkie litery).
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
Jedno wyjście jest rozdzielone znakiem SPACJA, a drugie znakiem KOLON.
➥ Skąd ta różnica?
Czy te dwie różne, odrębne zmienne? A może małe / wielkie litery wywołują jakiś trick lub znaczenie, o którym nie wiem?
Czy to jest zshfunkcja? Lub funkcja FreeBSD?
pathwewnątrz zshnie będzie zaktualizować dowolną pathenvvar: path=junk zsh -c 'echo $path; path=garbage; /usr/bin/printenv path'.
for path in "$dir"/*odruchowo bezpieczny kod do pisania.