ターミナルで bash エイリアス関数を実行するにはどうすればいいですか?

ターミナルで bash エイリアス関数を実行するにはどうすればいいですか?

多くの人がエイリアスに次のようなものを使っていることがわかりました/etc/bash.bashrc:

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
}

しかし、コンソールでこれらを実行するにはどうすればよいでしょうか? 単純に関数として実行しようとしましたが、さらに情報を入力する必要がある状態になります。これらをどのように実行すればよいか、どなたか教えていただけませんか?

答え1

  • del_recursiveextract最初の引数としてファイル名を指定します:

    extract foo.tar.gz
    del_recursive bar.txt~
    
  • processは の出力内のパターンを検索しますps。 に引数を渡すことができますgrep。引数はプロセス名または PID です。

    process firefox
    
  • apache次のようなサービスコマンドが必要です:

    apache restart
    

関連情報