ユーザーの変更中にエラーが発生しました。

ユーザーの変更中にエラーが発生しました。

ユーザーを変更するたびに、su myNameこの3つのエラーが常に発生します。

-bash: zstyle: command not found
-bash: autoload: command not found
-bash: compinit: command not found

これは通常のユーザーに切り替えるときにのみ発生します。どのように削除しますか?

システム:

  • アーチ x86_64
  • ターミナル:Bash(以前はzshを試してみましたが削除しました)

編集する:bashコンソールから実行しても同じエラーが発生しました。

答え1

図からわかるように-強く打つsu開始しようとした出力の各行を開始します。ログインシェル(1)。

つまり、/etc/profile、myName_Home_Dir/.bash_profile、myName_Home_Dir/.bash_login、およびmyName_Home_Dir/.profileを読み取り、そこにあるコマンドが実行されます。

したがって、私たちはzstyle、はさみファイルの1つにautoload意図compinitせずに残されたコマンドであると仮定できます。以前に別のシェルを使用した場合は、/etc/profileまたはmyName_Home_Dir/.profileである可能性が高くなります。


(1) 指摘したようにザイルズsu myName以下のコメントで実際におっしゃったのと同じなら、一つだけsu myName実行しなければならないので、そうしてはいけません。インタラクティブシェル(指針を読まないでください/etc/profilemyName_$HOME/.profile。したがって、あなたはログインシェルを明示的にトリガーすることと同義語をほとんど要求していますsu - myNamesu --login myName

関連情報