Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash gpg仅加密文件夹中的某些文件_Bash_Gnupg - Fatal编程技术网

Bash gpg仅加密文件夹中的某些文件

Bash gpg仅加密文件夹中的某些文件,bash,gnupg,Bash,Gnupg,一个文件夹中有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 我想用一个gpg命令加密除alabama.g

一个文件夹中有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

我想用一个gpg命令加密除alabama.gz和somename.gz之外的所有文件;
如何才能做到这一点?

您不能用一个
gpg
命令加密多个文件。但是,您可以
tar
将它们全部归档,然后对结果进行加密。有关详细信息,请参阅UNIX站点上的

在任何情况下,您都需要列出要包含的文件。

正如您已经知道的(从您发布的内容中),Bob的回答错误地说您不能用一个命令加密多个文件

使用自己的命令行,您几乎可以做到这一点;你只需要一点小把戏,例如:

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

实际上,如果要加密文件夹中的所有文件,可以使用单个命令加密多个文件

gpg -r 'name' --encrypt-files *.gz
很好用。如果你想跳过这两个文件,Ryan的答案是正确的


斯科特

你想做什么一点也不清楚。可能会显示您拥有的15个文件名,并确定要排除的2个。@Bob Duell:添加了文件名examples@ryan:非常感谢