Шифрование на стандартный вывод с помощью gnupg
Я пытаюсь что-то зашифровать gpg -a
и вернуть результат в стандартный формат, а не в файл. Согласно инструкции, этого должно быть достаточно, чтобы опустить --output
флаг, но это не так. Когда я не указываю выходной файл, gnupg предполагает, что я выводлю в [input-file].gpg
а не стандартный
Есть ли способ заставить GPG сделать это, или мне придется зашифровать его во временный файл, а затем cat
Это?
4 ответа
Вместо передачи входного файла в gpg, используйте перенаправление оболочки для отправки входного файла в стандартный ввод gpg, например:
gpg -ac < inputfile
На всякий случай, если кому-то еще нужно сделать это, вы можете сделать это с
gpg -ac -o- infile
Установка выходного имени файла в "-" отправляет вывод в stdout.
Если кому-то еще нужен лучший или более краткий ответ:
Ты можешь сделать gpg --output -
с любыми другими флагами.
Для примера выше вы можете сделать gpg --armor --symmetric --output - file.txt
или же gpg -aco - file.txt
Редактировать : извините понял, что вы хотели симметричное шифрование
gpg -a -c
появится запрос пароля, после этого введите ваше сообщение и нажмите Ctrl+ D
gpg -a --encrypt -r recipient@gmail.com
затем введите сообщение, когда вы закончите, нажмите Ctrl+ D