`pass` 비밀번호 관리자에서 비밀번호 내보내기


9

나는 1 년 정도 동안 pass 암호 관리자 를 사용해 왔으며 훌륭하지만 때로는 다른 암호 관리자를 테스트하고 암호를 다시 필요로합니다.

지금까지 필요에 따라 수동으로 추가했지만 다른 암호 관리자로 마이그레이션하려면 스크립트가 필요합니다. 백 (더 많지 않으면).

가능합니까? 이미 해결책이 있습니까?

지난 몇 달 동안 솔루션을 켜고 끄면서 "이 스크립트를 실행하고 붐을 내 보낸"솔루션을 찾지 못했습니다.

그런 스크립트가 있습니까? 그렇지 않다면 무엇을, 어디에서 찾아야합니까?


@ josten 그래, 나는 그것이 모든 파일을 통과하는 곳에서 무언가를 가지고 있다고 생각하고 암호를 얻고 어딘가에 저장합니다. 그렇게하는 한 가지 방법입니다. 그러나 확실하지 않은 방법
greduan

답변:


10

비밀번호 저장소에있는 파일을 반복하여 별도의 파일에 작성하여 gpg-agent를 실행중인 경우 (암호가로드 된 경우)이를 수행 할 수 있습니다.

서브 디렉토리의 각 파일에서 경로 ( $PASSWORD_STORE_DIR) 및 .gpg확장자에서 선행 디렉토리를 제거해야 하지만 그렇지 않은 경우에는 간단합니다.

#!/usr/bin/env bash
# export passwords to external file

shopt -s nullglob globstar
prefix=${PASSWORD_STORE_DIR:-$HOME/.password-store}

for file in "$prefix"/**/*.gpg; do                           
    file="${file/$prefix//}"
    printf "%s\n" "Name: ${file%.*}" >> exported_passes
    pass "${file%.*}" >> exported_passes
    printf "\n\n" >> exported_passes
done

그것은 내가 생각했던 것에 따라 매우 간단합니다. :) 정말 빠릅니다. 각 파일의 내용 앞에 파일 이름을 추가 한 다음 각 파일 사이에 두 줄 (분리 용)을 어떻게 추가 하시겠습니까? 나는 쉘 스크립팅에별로 익숙하지 않다.
greduan

BTW 내가 원하는 이유는 일부 암호 (즉, LastPass에서 가져 오지 않은 암호)에는 암호 자체 외에 암호에 대한 정보가 없기 때문에 암호가 무엇인지 모르는 암호가 있기 때문입니다.
greduan

@Greduan 요청한 형식으로 인쇄하도록 업데이트되었습니다.
jasonwryan
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.