¿Cómo definir un alias solo para algún directorio?

¿Cómo definir un alias solo para algún directorio?

Quiero definir algunos alias iex="iex -S mix"solo para un directorio; este alias debería funcionar solo cuando accedo cda este directorio. Otro requisito: esta funcionalidad debe colocarse dentro de este directorio, hookarchivo o cualquier otra cosa, porque quiero compartir este directorio como un repositorio de git.

¿Cómo puedo hacer eso?

Respuesta1

iexSi quieressolotrabajar en un directorio ynuncaen cualquier otro lugar prueba esto:

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

Si desea iextrabajar de manera diferente en otros directorios, inténtelo así:

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

Respuesta2

Mi versión de desarrollo actual de Bourne Shell (bosh) implementa esta característica desde hace 6 años. Consulte la página de manual:

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

y eche un vistazo a local persistent aliaseslos alias locales de un directorio y persistentes porque se guardan en un archivo .localsdel directorio relacionado.

Estoy interesado en recibir comentarios, en especial si también debería haberlos .locals.#, donde # es la identificación del usuario que puede usarlos.

información relacionada