Я хочу написать скрипт, который будет запускать gpg
файл с именем «file» с парольной фразой «test».
Обычно, когда я использую gpg
, я обычно просто бегаю, gpg -c file
и он просит у меня пароль. Но так как я хочу, чтобы этот скрипт выполнял все самостоятельно, я хотел бы предоставить парольную фразу как часть команды.
Теперь, когда я пытаюсь использовать:, gpg -c file --passphrase test
он выводит:
использование: gpg [параметры] --симметричный [имя файла]
Какие швы, как он хочет, чтобы я использовал gpg --passphrase test --symmetric file
. Но если я сделаю это, появится диалоговое окно с просьбой ввести пароль; что не то, что я хочу.
Как правильно настроить аргументы?
--passphrase
и--symmetric
аргументы были на самом деле правильно, но я только отсутствует--batch
аргумент? Потому что это не сработало для меня. Я пытался добавить--batch
как до, так и после, на всякий случай. Кроме того, я не знаю, как проверить, является ли то, что я использую, GPG 2, но часть, которую вы вставили, говорит,Note that this passphrase is only used if the option --batch has also been given.
что не существует на моейman
странице.gpg --version
должен предоставить информацию о версии GnuPG, которую вы используете. У вас естьgpg2
бинарный файл?gpg
1.4.16. Вдохновленный вашими комментариями, я обнаружил, что gpg2 разрабатывается отдельно, поэтому я установил его и опробовал, но он жалуется, чтоno valid OpenPGP data found. processing message failed: Unknown system error
--symmetric
и--passphrase
, порядок, кажется, не актуален, но попробуйте--export
и определите--armor
потом. Как правило, опции должны предшествовать командам, что также является порядком, определенным на страницах руководства.Если
gpg --version
отчеты v2, вам нужно добавить--batch
опцию.Исходя из вывода синтаксиса, вы, вероятно, используете v1, и в этом случае вы хотите:
Обратите внимание, что порядок опций не важен; однако любой файл должен быть последним аргументом.
источник
Использование
--pinentry-mode loopback
работает с--passphrase
&--passphrase-[file/fd]
, и позволит вам ввести новую информацию, в случае конфликта имен файлов, например:в отличие от
--batch
этого быстро потерпит неудачу, говоря...failed: File exists
Если вы сначала добавили verbose option (
-v
), вы должны были увидеть что-то вроде:довольно ясно указывает на то, что ему не нравилось что-то ставить
-c
(--symmetric
) первым.Я считаю поведение gpg2 игнорированием
--passphrase
опций, если оно не сопровождается--batch
ошибкой.источник