gpg шифрует только определенные файлы в папке

В папке 15 файлов, все с расширением gz. Я хочу зашифровать только 12 из них и пропустить 3 файла. Есть какой-либо способ сделать это? все имена файлов различны и могут начинаться или не начинаться с одной и той же буквы. в данный момент занимаюсь:

gpg -r 'name' --encrypt-files  $source/*.gz

Скажем, имена файлов: apple.gz, alabama.gz, butter.gz, cake.gz, dog.gz, eagle.gz, oregon.gz, somename.gz;

Я хочу зашифровать все файлы, кроме alabama.gz и somename.gz, одной командой gpg; Как я могу это сделать?

3 ответа

Решение

Как вы уже знаете (из того, что вы опубликовали), Боб ответит неверно, говоря, что вы не можете зашифровать несколько файлов с помощью одной команды.

Вы почти там со своей собственной командной строкой; вам просто нужно немного обмануть оболочку, например:

gpg -r recip --encrypt-files $(ls $source/*.gz | egrep -v 'alabama|somename')

На самом деле, вы можете зашифровать несколько файлов с помощью одной команды, если вы хотите зашифровать все файлы в папке.

gpg -r 'name' --encrypt-files *.gz

Работает просто отлично. Ответ Райана верен, если вы хотите пропустить эти 2 файла.

Скотт

Вы не можете зашифровать несколько файлов одним gpg команда. Тем не менее, вы могли бы tar все они в архив, а затем зашифровать результат. Смотрите этот похожий вопрос на сайте UNIX для получения дополнительной информации.

В любом случае вам нужно будет перечислить файлы, которые вы хотите включить.

Другие вопросы по тегам