Bash no ejecuta script en /opt/local/etc/bash_completion.d/


8

Quería tener el autocompletado de bash para los comandos de git, así que coloqué un archivo de script de bash en /opt/local/etc/bash_completion.d/.

Cuando abro una nueva Terminal, el archivo de script /opt/local/etc/bash_completion.d/no se ejecuta. He verificado que el archivo de script está funcionando ejecutando:

source /opt/local/etc/bash_completion.d/git-completion.bash

¿Faltan pasos aquí para pedirle a OS X que ejecute automáticamente los scripts /opt/local/etc/bash_completion.d/?

Respuestas:


8

Para cargar automáticamente todos los scripts de un directorio, colóquelo en su ~/.bashrcarchivo

# LOAD ALL AUTOCOMPLETIONS IF ANY ARE INSTALLED
if [ -d /usr/local/etc/bash_completion.d ]; then
    for F in "/usr/local/etc/bash_completion.d/"*; do
        if [ -f "${F}" ]; then
            source "${F}";
        fi
    done
fi

3

Sí, debe cargarlos en su shell.

Esto se hace editando ~/.bashrco ~/.bash_profileagregando el comando . filenamepara cada archivo. Esto carga el archivo y hace que las funciones estén disponibles. es decir, coloque su comando de origen en uno de estos archivos.

Tenga en cuenta que no debe agregar a, /opt/local/etc/bash_completion.d/ya que solo los macports deben escribir allí. Ponga los archivos en su directorio de inicio, por ejemplo~/.bash_completion.d/git-completion.bash

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.