Я пытаюсь написать пакетный файл для расшифровки папки из .gpg
файлов, которые все были зашифрованы одним и тем же открытым ключом. Это то, что у меня есть до сих пор:
@ECHO off
SET outbound=C:\encrypted files
SET olddir=%CD%
SET password=correcthorsebatterystaple
CD /d %outbound%
DIR *.gpg /B > tmp.txt
FOR /F "tokens=*" %%F IN (tmp.txt) DO (
ECHO %%F > tmplen.txt
FOR %%L IN (tmplen.txt) DO (SET namelen=%%~zL)
DEL tmplen.txt
gpg --output %%F:~0, namelen-4 --batch --yes --passphrase %password% --decrypt %%F)
DEL tmp.txt
CD /d %olddir%
В настоящее время он просто печатает
usage: gpg [options] [filename]
Это мой первый раз, когда я пытаюсь написать пакетный скрипт, поэтому я уверен, что это что-то простое.
namelen
выглядит неправильно. Вы устанавливаете его повторно и никогда не используете. Вам могут понадобитьсяsetlocal enabledelayedexpansion
,set /a namelen=!namelen!-4
иgpg --output %%F:~0, !namelen!
, чтобы сделать то, что вы пытаетесь сделать. - person TessellatingHeckler   schedule 29.07.2015