見出しで述べたように、シェルでこの端末セッションにsudoパスワードが入力されているかどうかを確認する必要があります(sudoの権利がある場合)。 私がそれを持っている場合、私は1つのことをしたいと思います、そして私がそれを持っていない場合、それは私にそれを促さないでください、ただ私に別のことをさせてください。 そのため、擬似コードでは次のようになります。 if (sudo = true) echo "i got sudo" else echo "i dont have sudo" fi しかし、このために見つけたすべてのコマンドは、チェックしようとすると常にsudoパスワードの入力を求められます。 基本的な考え方は、スクリプトがsudoパスワードをいくつかの場所で要求できる(そして要求する)ことですが、「スクリプトはsudoパスワードを要求するようになります」を出力したくありません。すでに入力されている場合(つまり、sudoパスワードを要求しないことを意味します)。 誰かが私を助けてくれることを願っています。
クリックする前に、これは典型的な「bashプロンプトに色を付けるにはどうすればよいか」という質問ではありません。私はすでにbashプロンプトを次のようにカスタマイズしています: [user @ host]----[$(pwd)] $ 〜/ .bashrcファイルに以下を追加することで、括弧内のすべてが水色で、他のすべて($を含む)が黒になります # Turn the prompt symbol red if the user is root if [ $(id -u) -eq 0 ]; then # you are root, make the prompt red PS1="[\e[01;34m\u @ \h\e[00m]----[\e[01;34m$(pwd)\e[00m]\n\e[01;31m#\e[00m " else PS1="[\e[01;34m\u @ \h\e[00m]----[\e[01;34m$(pwd)\e[00m]\n$ " fi 目標は、「sudo su」を使用したときに変更される唯一のものが、黒の$が赤の#に変更されるようにすることです。/etc/bash.bashrcと/ etc / profileを調べてコメントアウトする行があるかどうかを確認しましたが、debian_chrootについてはわからないことがたくさんあります。何かを台無しにするために。どうすれば自分のやりたいことを達成できますか? PSこれは、プロンプトをルートとして表示するものです …