sudo 시간 초과 정보로 Zsh 프롬프트 업데이트

sudo 시간 초과 정보로 Zsh 프롬프트 업데이트

sudo내 자격 증명이 캐시되었는지 Zsh 프롬프트에 표시하고 싶습니다 . 지금까지 내가 달성하고자 하는 바를 설명하는 데 도움이 될 것입니다.

function sudo-warning {
    if sudo -nl &>/dev/null; then
        echo -n " %{${fg[red]}%}

답변1

이것은 시간 초과에 도달했는지 알려주는 데 효과적인 것 같습니다.

sudo-expired() [[ $(
  trap "" XFSZ
  limit filesize 0
  LC_ALL=C sudo -n true 2>&1) = *"password is required" ]]

즉, 파일 크기 제한을 0으로 설정하면 타임스탬프 파일 업데이트가 실패하지만 제한이 만료되지 않는 한 sudo비밀번호가 필요한지 여부를 알 수 있습니다.

다음과 같이 사용하세요(몇 가지 단순화 포함):

sudo-warning()
  if sudo-expired; then
    echo '%F{blue}

관련 정보