Tar.gz 并加密文件夹

Tar.gz and encrypt folders

我有很多文件夹要备份到远程位置。 我想 tar.gz 并加密所有这些,[如果可能的话] 在一个命令行中。

到目前为止,我已经成功完成了一半的工作,

find . -type d -maxdepth 1 -mindepth 1 -exec tar czf {}.tar.gz {} \;

现在我想为此命令添加一个加密步骤,如果可能的话使用 gnupg。

有人可以帮忙吗?

不,您不能直接将多个命令包含到查找的 -exec 选项中。

另一方面,您可以轻松地迭代结果。例如在bash中,你可以这样做:

find . -maxdepth 1 -mindepth 1 -type d | while read dir; do
  tar czO "${dir}" | gpg --output "${dir}".tar.gz.asc --encrypt --recipient foo@example.com
done