removeFromPath() {
local p d
p=":$1:"
d=":$PATH:"
d=${d//$p/:}
d=${d/#:/}
PATH=${d/%:/}
}
Características:
- é puro Bash,
- não invoca outros processos (como ‘sed’ ou ‘awk’),
- não muda
IFS
, - não bifurca um sub-shell,
- lida com caminhos com espaços, e
- remove todas as ocorrências do argumento em
PATH
.