パラメータを文字列の一部としてエイリアスに渡す

パラメータを文字列の一部としてエイリアスに渡す

愚かな質問ならすみません。

私のワークスペースには、dir1、dir2、dir3、dirzzの4つのディレクトリがあります。呼び出すディレクトリを決定するには、パラメータでエイリアスを設定する必要があります。例えば

$ gotodir 1

その後、dir1に移動する必要があります。

$ gotodir z

これは私をdirzzに連れて行かなければなりません。

頑張った alias gotodir="cd ~/home/user/dir${1}" alias gotodir='cd ~/home/user/dir$1'

しかし、両方ともエラーが発生します

誰でも助けることができますか?

ベストアンサー1

~からバッシュのマニュアルページこのaliasセクションの:

代替テキストにパラメータを使用するメカニズムはありません。パラメータが必要な場合は、シェル関数を使用する必要があります。

したがって、必要なことを行うには関数を定義するだけです。

gotodir() { cd ~/dir"$1"; }

その後、呼び出します。

gotodir 1

おすすめ記事