Use $HOME
em seu caminho, em vez de til ( ~
), especialmente se você colocar o novo PATH
entre aspas duplas. O til não é expandido quando ocorre entre aspas.
Teste:
$ mkdir "$HOME/t"
$ cat >"$HOME/t/foo" <<END
#!/bin/sh
echo "hello"
END
$ chmod +x "$HOME/t/foo"
$ PATH="$PATH:~/t"
$ foo
zsh: command not found: foo
$ PATH="$PATH:$HOME/t"
$ foo
hello
Veja também: Por que o til não é expande aspas duplas internas?