重要でない質問がある場合は、事前にお詫び申し上げます。しかし、この問題に関する情報はどこにも見つからず、狂っているようです。上の図を参照してください。
これはアーチインストールシェルで発生し、virtualboxとUSBから起動したベアメタルでこの現象を再現できました。初めてArch isoから起動すると、zshプロンプトでルートシェルが表示されます。root@archiso ~ #
認識されたコマンドを入力するとプロンプトはそのままになりますが、認識されないコマンドを入力するとzshプロンプトはユーザーです。フィールドは最初のコマンドでからに変更されroot
、1 root
後続のコマンドではプロンプトが次に変わります。127 root@archiso ~ #
明らかに、コマンドラインは引き続き機能し、通常どおりインストールを続行できますが、ルートプロンプトをこのように変更すると混乱し、原因が何であるかわからず、少し心配です。
私はzshに初めて触れたので、これがArch Linuxではなくzshの珍しい点かもしれませんが、ユーザー名に少しの増分を表示する原因が何であるかよくわかりません。 127が7ビットの中で最も高い値なので、127で止まるという事実は手がかりのようです。これはバグですか?これは悪用される可能性がありますか?他の人がこれに気づきましたか?なぜこれが起こるのかを説明できる人はいますか?ご協力ありがとうございます!
私PS1
のもの:
# echo "$PS1"
%B%F{red}%(?..%? )%f%b%B%F{red}%n%f%b@%m %B%40<…<%~%<< %b%#
ベストアンサー1
私はこれを見つけました質問。
これが説明する
「プロンプトに、前のコマンドの戻りコードを表示するためにエスケープシーケンスを使用する機能が含まれています。
Zsh
」エスケープシーケンスはプロンプトに含まれているため、Archがインストールを構成するときに選択した内容に応じて予想される動作のようです。シェルプロンプト。code/exit
%?
%?
zsh
devs
zsh
これは私が推測する質問に対する答えです。ありがとうございます!