書式
alias NAME DEFINITION

書式
alias NAME=DEFINITION

概要

alias コマンドはfunction ビルトインの
シンプルなラッパーです。

alias コマンドはPOSIXシェルとの
後方互換性のために用意しています。

そうでなければ、
functionビルトインで
関数定義することをおすすめします。

どの関数がaliasによって
定義されたのかを
fishは把握しません。

aliasは functions -e
によって削除されます。

  • NAME は別名定義の名前です
  • DEFINITION は実行される
    実際のコマンドです。
    $argv が追加されます。

他のシェルと違って
関数と同名の別名は
定義できません。

注意! 別名を呼び出すときには、
スペースをエスケープする必要があります。

コマンドライン内と同じく
クオートされた中身であってさえも…
(最後の例を参照)

aliasfunction
ラッパーでしかありませんので、
他のfishセッションで
永続化できません。

今後も別名を使いたいならば
funcsave をすぐに実行
してください。

実行例

以下のコードは別名 rmi を作成します。

rmirm コマンドを
起動するときに
毎回追加の引数を付けます。

$ alias rmi "rm -i"
$ funcsave rmi

これは以下の関数と等価です。

function rmi
    rm -i $argv
end

以下の例では、
スペースをエスケープする
必要があります。

そうでないと
"Chrome.app" 以降を
"/Applications/Google" コマンドの
引数とみなしてしまうからです。

$ alias chrome='/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome banana'
$ funcsave chrome

最後までお読みいただき、ありがとうございました。参考になれば嬉しいです。