共有アカウントでログインしたときにコマンドを実行する

共有アカウントでログインしたときにコマンドを実行する

職場では、チームは共有アカウント「appadmin」を使用してアプリケーションを管理します。ログインすると、それぞれが自分の好みを含む「aliasrc」ファイルを受け取ります。 (エイリアス、表示、プロンプト...)。

これまで、私は次のことをしました。

normaluser$ su - appadmin
password:
appadmin$ . ~normaluser/.aliasrc
[superprompt: appadmin@machine]$ 

私はこれらすべてを1つのコマンドに減らしたいと思います。これまで、私は利点を活用し、毎回パスワードを入力するのを避けるためにsubyの使用を置き換えました。 (Sshが安全であることを知っていますが、ここではrloginが標準のようです。)rlogin.rhosts

共有アカウントにログインするとすぐにaliasrcファイルを取得する方法はありますか?

私はそれにぶら下がりませんrlogin。より良い提案があれば、皆耳を傾けます(...ok :-/)。

私は十分に明確に説明してください。

技術的な環境:Solaris 10、Ksh。

ベストアンサー1

ユーザーを切り替える前のユーザーに基づいてロードする~appadmin/.profile何かまたは他のログインスクリプトを追加したいと思います。.aliasrc一般的な方法はうまくいかないので、難しい部分はユーザー名を見つけることです。

$ whoami
appadmin

$ id
uid=1050(appadmin) gid=1050(appadmin)

$ id -ru
1050

私の考えの最も簡単な方法は、現在ttyが何であるかを調べて(コマンドを使用してtty)、どのユーザーがそれを所有しているかを確認することです。このユーザーは接続したいユーザーでなければなりません。

$ stat -c %U $(tty)
normaluser

その後、 ~normaluser/.aliasrc があることを確認し、存在する場合はインポートできます。

origuser=$(stat -c %U $(tty))
[ -e ~$origuser/.aliasrc ] && . ~$origuser/.aliasrc

おすすめ記事