各ディレクトリのエイリアスを設定するには?

各ディレクトリのエイリアスを設定するには?

エイリアスがありますが、go別のディレクトリで別の操作を実行したいとします。

あるディレクトリでは実行する必要がありますcmd1が、別のディレクトリでは実行する必要があります。cmd2

しかし、上記のディレクトリに切り替えるための別名がすでにありますが、別名にgo別名割り当てを付けることはできますか?foo

alias "foo=cd /path/to/foo"

OSXではbash(?)で動作します。

ベストアンサー1

何を求めるのか完全にはわかりませんが、エイリアスはエイリアスの内容に拡張されます。別名が 2 つある場合は、別のコマンド、さらに別名も連結できます。

alias "foo=cd /path/to/foo; go"
alias "foo2=cd /path/to/foo2; go"

それ以外の場合は、次のものを使用できます。.bashrc

function go ()
{
    if [ "$PWD" == "/path/to/foo" ]; then
       cmd1
    elif [ "$PWD" == "/path/to/go" ]; then
       cmd2
    fi;
}

より多くのオプションがある場合は、ケース構造を使用する方が良いです。

おすすめ記事