"rlwrap"이 입력 기록 파일에 비밀번호를 저장하는 것을 방지하는 방법은 무엇입니까?

"rlwrap"이 입력 기록 파일에 비밀번호를 저장하는 것을 방지하는 방법은 무엇입니까?

rlwrap다음 쉘 별칭에서 유틸리티를 사용합니다.

alias gp='rlwrap git push'

이 별칭의 목적 gp은 명령을 사용할 때 기본 줄 편집 명령을 사용할 수 있도록 하거나 명령줄의 시작이나 끝으로 이동하는 것 C-a입니다 .C-egit push

rlwrap또한 사용하는 모든 명령의 입력 기록을 전용 파일( )에 기록하도록 구성했습니다 .~/.config/rlwrap/<command>_history

export RLWRAP_HOME="${HOME}/.config/rlwrap"

별칭을 사용할 때 gp자격 증명, 사용자 이름, 비밀번호를 제공하고 rlwrap이를 ~/.config/rlwrap/git_history.

rlwrap예를 들어 별칭으로 사용하는 모든 명령(비밀번호 제외)의 입력 기록을 저장할 수 있습니까 gp?

답변1

현재 입력 라인이 저장되지 않도록 하는 방법을 찾은 것 같습니다. 에서 man rlwrap:

SPECIAL KEYS
   Control + O
          Accept the current line, but don't put it in the history list. This action has a readline command name
          rlwrap-accept-line-and-forget

따라서 유효성 검사 행을 사용하는 Enter대신 유효성 검사 행을 사용 하면 C-o해당 행이 저장되지 않아야 합니다.


아마도 해당 옵션도 사용할 수 있지만 -g일반 입력을 설명하지 않고 비밀번호를 설명하는 정규식을 작성할 수 있는지 확실하지 않습니다.

       -g, --forget-matching regexp
          Forget  (i.e.  drop  from history list) all input lines that match the POSIX 1003.2 regular expression
          regexp.  The match is always case-insensitive. regexp may be an ordinary string. For more about  regu‐
          lar expressions, see  regex (7)

답변2

내 자격 증명, 사용자 이름 및 비밀번호를 제공해야 하며 rlwrap은 이를 ~/.config/rlwrap/git_history에 저장합니다.

rlwrap당신 이 당신의 것을 저장했다고 확신합니까 ?비밀번호기록 파일에 있나요? 의도적으로 반향되지 않는 입력은 다음과 같습니다.안 돼요기록 목록에(이 경우 rlwrap키 입력이 에코됨 ****) 확인했는데 적어도 내 시스템에서는 그런 git push일이 일어나고 있습니다.

rlwrap기록 파일에 비밀번호가 있으면 s에 버그를 신고하세요.GitHub 사이트

답변3

rlwrap 옵션을 사용하여 기본 기록 파일을 무시할 수 있습니다 -H.

예를 들어alias gp='rlwrap -H /dev/null git push'

관련 정보