A estrutura usual de diretório unix tem arquivos de aplicativos classificados em diretórios por tipo: bin
para executáveis, lib
para bibliotecas, doc
para documentação e assim por diante. É quando eles são instalados em diretórios separados; muitas vezes, os aplicativos são agrupados em alguns diretórios (portanto, muitos sistemas têm apenas três diretórios em $PATH
: /usr/local/bin
, /usr/bin
e /bin
). É raro ter arquivos executáveis e subdiretórios dentro de um diretório, portanto não há demanda para incluir os subdiretórios de um diretório em $PATH
.
O que pode ser útil ocasionalmente é incluir todos os subdiretórios bin
de subdiretórios de um determinado diretório em $PATH
:
for d in /opt/*/bin; do PATH="$PATH:$d"; done
No entanto, isso raramente é feito. O método usual quando executáveis em diretórios não padrão devem estar em $PATH
é criar links simbólicos em um diretório no caminho, como /usr/local/bin
. O utilitário stow
(ou xstow
) pode ser útil nesse aspecto.