bash - zsh alias




Alias ZSH con parámetro (3)

No puedes hacer un alias con argumentos *, tiene que ser una función. Su función está cerca, solo necesita citar ciertos argumentos en lugar de los comandos completos y agregar espacios dentro de [] .

function gitall() {
    git add .
    if [ "$1" != "" ] # or better, if [ -n "$1" ]
    then
        git commit -m "$1"
    else
        git commit -m update
    fi
    git push
}

*: La mayoría de los shells no permiten argumentos en los alias, creo que csh y los derivados, pero no deberías usarlos de todos modos .

Estoy tratando de hacer un alias con un parámetro para mi simple git add / commit / push.

He visto que la función podría usarse como alias, así que lo intenté pero no lo logré.

antes de tener

alias gitall="git add . ; git commit -m 'update' ; git push"

Pero quiero poder modificar mis compromisos:

function gitall() {
    "git add ."
    if [$1 != ""]
        "git commit -m $1"
    else
        "git commit -m 'update'"
    fi
    "git push"
}

(Sé que es una práctica git terrible)


Si realmente necesita usar un alias con un parámetro por algún motivo, puede piratearlo incorporando una función en su alias y ejecutándola inmediatamente:

alias example='f() { echo Your arg was $1. };f'

Veo que este enfoque se usa mucho en los alias .gitconfig.


"git add ." y los otros comandos entre " son solo cadenas para bash, quitar las " s.

Es posible que desee utilizar [ -n "$1" ] en su cuerpo de if.





zshrc