GnuPG всегда ожидает ввода из файла или из STDIN. Чтобы передать строку в STDIN, используйте ECHO в системах Windows или echo в системах Unix и отправьте в gpg:
ECHO 1 | gpg [other options] --encrypt
echo 1 | gpg [other options] --encrypt
Поскольку вы уже ожидаете парольную фразу от файлового дескриптора 0 (который является STDIN), вам придется либо
- предоставить любую парольную фразу и данные для подписи из другого места
- pipe в обеих строках, разделенных символом новой строки, что легко сделать с помощью
sh/bash в системах unix (echo -e "passphrase\ndata" | gpg --sign --encrypt), но для Windows требуется довольно хакерское решение (Я не слишком знаком с командной строкой Windows, но, вероятно, вам придется выбрать одно из решений с помощью одной команды ECHO).