Como definir alias apenas para algum diretório?

Como definir alias apenas para algum diretório?

Quero definir alguns alias iex="iex -S mix"apenas para um diretório - esse alias deve funcionar somente quando eu cdacessar esse diretório. Outro requisito - esta funcionalidade deve ser colocada dentro deste diretório, hookarquivo ou algo outro, porque quero compartilhar este diretório como um repositório git.

Como eu posso fazer isso?

Responder1

Se você iexquiserapenastrabalhar em um diretório enuncaem qualquer outro lugar tente isto:

alias iex='[ $(pwd) = /path/to/special/dir ] && iex –S mix'

Se você quiser iextrabalhar de forma diferente em outros diretórios, tente assim:

alias iex='[ $(pwd) = /path/to/special/dir ] && iex –S mix || iex'

Responder2

Minha versão atual de desenvolvimento do Bourne Shell (bosh) implementa esse recurso desde 6 anos. Verifique a página de manual:

http://schillix.sourceforge.net/man/man1/bosh.1.html

e dê uma olhada em local persistent aliases- aliases locais para um diretório e persistentes porque são mantidos em um arquivo .localsdo diretório relacionado.

Estou interessado em comentários, principalmente se também deveria haver .locals.#, onde # é o ID do usuário que tem permissão para usá-los.

informação relacionada