シェルスクリプトを呼び出すために使用されるエイリアスを取得できますか?

シェルスクリプトを呼び出すために使用されるエイリアスを取得できますか?

次のBashスクリプトが与えられたら(と呼びますfoo.sh):

#!/usr/bin/env bash

cat <<EOF
\$0: $0
\$BASH_SOURCE: ${BASH_SOURCE[0]}
EOF

次にエイリアスを作成します。

$ alias bar='./foo.sh'

実行すると、bar出力は次のようになります。

$ bar
$0: ./foo.sh
$BASH_SOURCE: ./foo.sh

変数があるかどうか(スクリプト自体から)取得できる他の方法があるかどうかを知りたいです。コマンド/別名スクリプト呼び出し用 - この場合、bar必要な出力は次のとおりです。

$ bar
$0: ./foo.sh
$BASH_SOURCE: ./foo.sh
$SOME_MAGIC_VARIABLE: bar

私がこれをしたいのは、同じスクリプトファイルでコード/関数を共有できますが、状況によっては異なる方法で実行できるからです。どのようにコマンドが呼び出されました。 whereuptimeware は同じバイナリですが、呼び出される項目によって異なる機能を実行します。

ベストアンサー1

おすすめ記事