批量加密pdf方法(完全免费)

批量加密pdf方法(完全免费)

  • 批量加密pdf方法(完全免费)
    • 批量加密工具
      • 前提(环境)
      • 使用pdftk加密单个文件
      • 批量加密pdf文档

批量加密pdf方法(完全免费)

一般的pdf阅读器或编辑器可以加密pdf,加密pdf一方面可以保护pdf内容不会任意传播,另一方面也是大家在使用各类网盘保存资料时,一些文档可能会被误认为是敏感资源(猜测是根据文件散列值判断),进而导致自己的宝贵资料丢失(此处本人不想吐槽某网盘了,学校下发的文件给认为是敏感文件,上传后无法下载,折腾了我几天,不经用户允许删除用户资料,且本人并没有将其共享),加密后的文档由于其散列/hash值改变,所以与原文件并不相同,同时也保证了文件的安全性。一些批量加密pdf文档的工具收费,一天搜索ubuntu apt包管理系统的软件库时,发现了命令行版本的pdf加/解密工具pdftk,它虽然一次只能给一个文件加密,但通过编写shell脚本的方式,可以实现批量加密。

批量加密工具

前提(环境)

Ubuntu Linux (虚拟机/裸机/WSL),pdftk
pdftk安装过程如下

sudo apt update
sudo apt install -y pdftk

使用pdftk加密单个文件

# 下面是一个典型的使用,还有其它加密选项,根据选项自行摸索,此处是简单的加密防止浏览文档
pdftk test.pdf(原pdf文档) output test.s.pdf(新文件名) user_pw 123456(密码)

注意:如果pdf文档已经加过密,如:限制编辑、打印、浏览等,pdftk会处理失败,原文件不会被修改,新文件也不会产生,一些文档经过了数字签名,pdftk在处理时会弹出警告信息,旨在提醒作者尊重版权,依然会处理成功。

批量加密pdf文档

此处为加密当前目录下所有文档的脚本,如下

pdfs=$(find . -name *.pdf)
PRE_IFS=$IFS
IFS=$'\n'
for pdf in ${pdfs}
do
if pdftk $pdf output $(echo $pdf|sed 's@pdf$@\s.pdf@g') user_pw 123456
then
rm -f $pdf # 可选地删除原文件,如不需要,则删除或注释此行
else
echo it\'s a passwd file
fi
done
IFS=$PRE_IFS

保存到文件pdftk-ls.sh中,再执行命令chmod +x pdftk-ls.sh,也可以将其放入/usr/bin/目录下,执行命令./pdftk-ls.sh(pdftk-ls.sh文件在当前目录)或pdftk-ls.sh(脚本放入了/usr/bin目录下),原文档会被加密,新文件名形如xxx.s.pdf(原文件为xxx.pdf),成功处理的文件会删除原文档。

你可能感兴趣的:(pdf,linux,ubuntu,linux,ubuntu,安全,加密解密)