¿Cómo ejecutar funciones de alias de bash en la terminal?

¿Cómo ejecutar funciones de alias de bash en la terminal?

Descubrí que muchas personas tienen algo como en sus /etc/bash.bashrcalias:

del_recursive() {
    find . | grep '$1' | xargs rm
}

process() {
    ps -ef | grep $1
}

apache() {
    sudo service apache2 $1
}

function extract()    # Handy Extract Program.
{
     if [ -f $1 ] ; then
         case $1 in
             *.tar.bz2)   tar xvjf $1     ;;
             *.tar.gz)    tar xvzf $1     ;;
             *.bz2)       bunzip2 $1      ;;
             *.rar)       unrar x $1      ;;
             *.gz)        gunzip $1       ;;
             *.tar)       tar xvf $1      ;;
             *.tbz2)      tar xvjf $1     ;;
             *.tgz)       tar xvzf $1     ;;
             *.zip)       unzip $1        ;;
             *.Z)         uncompress $1   ;;
             *.7z)        7z x $1         ;;
             *)           echo "'$1' cannot be extracted via >extract<" ;;
         esac
     else
         echo "'$1' is not a valid file"
     fi
}

pero ¿cómo ejecutarlos en la consola? Intenté simplemente ejecutar funciones como, pero simplemente pasa al estado en el que tienes que ingresar más información. ¿Alguien podría indicarme cómo deberían ejecutarse?

Respuesta1

  • del_recursivey extractespere un nombre de archivo como primer argumento:

    extract foo.tar.gz
    del_recursive bar.txt~
    
  • processbusca patrones en la salida de ps, puede pasarle un argumento grep, puede ser un nombre de proceso o un PID:

    process firefox
    
  • apacheespera un comando de servicio como:

    apache restart
    

información relacionada