Команда GPG работает в оболочке, но не в Go exec.Command () - PullRequest
0 голосов
/ 20 октября 2018

Я использую gnupg для шифрования файлов с помощью следующей команды:

gpg --encrypt --sign --armor -r person@email.com name_of_file

Эта команда отлично работает в оболочке.Но она не работает в программе go со следующей ошибкой:

gpg: cannot open '/dev/tty': Device not configured

Вот код:

    func main() {
        var stdout, stderr bytes.Buffer

        cmd := exec.Command("/bin/sh", "-c", `gpg --encrypt --sign --armor -r person@email.com file_name.csv`)

        cmd.Stdout = &stdout
        cmd.Stderr = &stderr

        err := cmd.Run()
        if err != nil {
            log.Println(err)
        }

        out := stdout.String() + stderr.String()
        fmt.Println(out)
}

Почему я получаю эту ошибку и как ее исправить?

...