Linuxで特定のTTYnにログインした後(永続的な)デフォルトシェルを変更するには?

Linuxで特定のTTYnにログインした後(永続的な)デフォルトシェルを変更するには?

chshこのコマンドは、インストールされているシェル間でユーザーのログインシェルを切り替えるために使用されることを知っていますが、うまくいきます。にもかかわらずログインソース(tty1、tty2、ssh、...)。私が達成したいのは、cshtty7でログインし、bash他のすべてのログインソースにログインすることです。

これは可能ですか?

ベストアンサー1

もうダメだ。

いいえ、ログインシェルはユーザーがログインしたTTYではなくユーザーにバインドされます。ユーザーは1つの特定のログインシェルを持つことができます。

はい、ユーザーはすべての条件に応じて、ログインシェルの初期化ファイルから別のプログラムまたはユーティリティを起動できます。

たとえば、bash現在のシェルにログインしているユーザーは、仮想端末7にログインしたときに実行するファイルに次の内容を追加できます.bash_profilecsh

case $(tty) in
    */tty7) exec csh -l ;;
esac

exec csh -l現在のシェルをに置き換えて、cshログインシェルで始めます。

おすすめ記事