ユーザーを変更するたびに、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/profile
)myName_$HOME/.profile
。したがって、あなたはログインシェルを明示的にトリガーすることと同義語をほとんど要求していますsu - myName
。su --login myName