今天,我碰巧分享一个受密码保护的 PDF 文件给我的一个朋友。我知道这个 PDF 文件的密码,但是我不想透露密码。作为代替,我只想移除密码并发送文件给他。我开始在因特网上查找一些简单的方法来从 PDF 文件中移除密码保护。在快速 google 搜索后,在 Linux 中,我带来四种方法来从一个 PDF 文件中移除密码。有趣的事是,在几年以前我已经做过这事情但是我忘记了。如果你想知道,如何在 Linux 中从一个 PDF 文件移除密码,继续读!它是不难的。

在Linux中从一个PDF文件中移除密码

方法 1 – 使用 Qpdf

Qpdf 是一个 PDF 转换软件,它被用于加密和解密 PDF 文件,转换 PDF 文件到其他等效的 PDF 文件。 Qpdf 在大多数 Linux 发行版中的默认存储库中是可用的,所以你可以使用默认的软件包安装它。

例如,Qpdf 可以被安装在 Arch Linux 和它的衍生版,使用 pacman ,像下面显示。

$ sudo pacman -S qpdf

在 Debian、Ubuntu、Linux Mint 上:

$ sudo apt-get install qpdf

现在,让我们使用 qpdf 从一个 pdf 文件移除密码。

我有一个受密码保护的 PDF 文件,名为 secure.pdf。每当我打开这个文件时,它提示我输入密码来显示它的内容。

我知道上面 PDF 文件的密码。然而,我不想与任何人共享密码。所以,我将要做的事是简单地移除 PDF 文件的密码,使用 Qpdf 功能带有下面的命令。

$ qpdf --password='123456' --decrypt secure.pdf output.pdf

相当简单,不是吗?是的,它是!这里,123456 是 secure.pdf 文件的密码。用你自己的密码替换。

方法 2 – 使用 Pdftk

Pdftk 是另一个用于操作 PDF 文件的好软件。 Pdftk 可以做几乎所有的 PDF 操作,例如:

加密和解密 PDF 文件。

合并 PDF 文档。

整理 PDF 页扫描。

拆分 PDF 页。

旋转 PDF 文件或页。

用 X/FDF 数据 填充 PDF 表单,和/或摧毁表单。

从 PDF 表单中生成 PDF数据模板。

应用一个背景水印,或一个前景印记。

报告 PDF 度量标准、书签和元数据。

添加/更新 PDF 书签或元数据。

附加文件到 PDF 页,或 PDF 文档。

解包 PDF 附件。

拆解一个 PDF 文件到单页中。

压缩和解压缩页流。

修复破损的 PDF 文件。

Pddftk 在 AUR 中是可用的,所以你可以在 Arch Linux 和它的衍生版上使用任意 AUR 帮助程序安装它。

$ pacaur -S pdftk

$ packer -S pdftk

$ trizen -S pdftk

使用 Yay:

$ yay -S pdftk

$ yaourt -S pdftk

在 Debian、Ubuntu、Linux Mint 上,运行:

$ sudo apt-get instal pdftk

在 CentOS、Fedora、Red Hat 上:

首先,安装 EPEL 仓库:

$ sudo yum install epel-release

$ sudo dnf install epel-release

然后,安装 PDFtk 应用程序,使用命令:

$ sudo yum install pdftk

或者

$ sudo dnf install pdftk

一旦 pdftk 安装,你可以从一个 PDF 文档移除密码,使用命令:

$ pdftk secure.pdf input_pw 123456 output output.pdf

用你正确的密码替换 123456。这个命令解密 secure.pdf 文件,并创建一个相同的名为 output.pdf 的无密码保护的文件。

参阅:

方法 3 – 使用 Poppler

Poppler 是一个基于 xpdf-3.0 代码库的 PDF 渲染库。它包含下列用于操作 PDF 文档的命令行功能集。

pdfdetach – 列出或提取嵌入的文件。

pdffonts – 字体分析器。

pdfimages – 图片提取器。

pdfinfo – 文档信息。

pdfseparate – 页提取工具。

pdfsig – 核查数字签名。

pdftocairo – PDF 到 PNG/JPEG/PDF/PS/EPS/SVG 转换器,使用 Cairo 。

pdftohtml – PDF 到 HTML 转换器。

pdftoppm – PDF 到 PPM/PNG/JPEG 图片转换器。

pdftops – PDF 到 PostScript (PS) 转换器。

pdftotext – 文本提取。

pdfunite – 文档合并工具。

因这个指南的目的,我们仅使用 pdftops 功能。

在基于 Arch Linux 的发行版上,安装 Poppler,运行:

$ sudo pacman -S poppler

在 Debian、Ubuntu、Linux Mint 上:

$ sudo apt-get install poppler-utils

在 RHEL、CentOS、Fedora 上:

$ sudo yum install poppler-utils

一旦 Poppler 安装,运行下列命令来解密密码保护的 PDF 文件,并创建一个新的相同的名为 output.pdf 的文件。

$ pdftops -upw 123456 secure.pdf output.pdf

再一次,用你的 pdf 密码替换 123456 。

正如你在上面方法中可能注意到,我们仅转换密码保护的名为 secure.pdf 的 PDF 文件到另一个相同的名为 output.pdf 的 PDF 文件。技术上讲,我们并没有真的从源文件中移除密码,作为代替,我们解密它,并保存它为另一个相同的没有密码保护的 PDF 文件。

方法 4 – 打印到一个文件

这是在所有上面方法中的最简单的方法。你可以使用你存在的 PDF 查看器,例如 Atril 文档查看器、Evince 等等,并打印密码保护的 PDF 文件到另一个文件。

在你的 PDF 查看器应用程序中打开密码保护的文件。转到 “File - > Print” 。并在你选择的某个位置保存 PDF 文件。

于是,这是全部。希望这是有用的。你知道/使用一些其它方法来从从 PDF 文件中移除密码保护吗?在下面的评价区让我们知道。

更多好东西来了。敬请期待!

谢谢!

本文由 LCTT 原创编译,Linux中国 荣誉推出

linux强制移除pdf密码,分享|如何在 Linux 中从一个 PDF 文件中移除密码相关推荐

  1. 如何在Linux命令行中替换多个文件中的字符串

    本文翻译自:How to replace a string in multiple files in linux command line I need to replace a string in ...

  2. 模拟一个“系统登陆“窗体,进行用户名和密码的验证: 1.当用户名和密码都正确时,弹出一个对话框,提示“用户名和密码正确”, 2.用户名错误,弹出一个对话框,提示“用户名错误,请重新输入!”

    模拟一个"系统登陆"窗体,进行用户名和密码的验证: 1.当用户名和密码都正确时,弹出一个对话框,提示"用户名和密码正确", 2.用户名错误,弹出一个对话框,提示 ...

  3. linux查看密码配置文件,如何在Linux上查看和配置密码时效

    使用正确的设置,可以强制 用户定期更改密码.以下是查看密码时效以及如何更改其中设置的方法.可以将 Linux 系统上的用户密码配置为永久或设置过期时间,以让人们必须定期重置它们.出于安全原因,通常认为 ...

  4. linux中更改用户密码_如何在Linux中更改用户密码

    linux中更改用户密码 In this tutorial, we will focus on how you can change a user's password in Linux. We wi ...

  5. 如何在linux系统下修改mysql密码_如何在linux下修改mysql数据库密码?linux修改数据库密码的方法...

    本篇文章给大家带来的内容是介绍如何在linux下修改mysql数据库密码?linux修改数据库密码的方法.有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助. Linux下修改Mysql的 ...

  6. linux更改root密码_如何在Linux中更改root密码

    linux更改root密码 Let's go over the simple commands to change the root password in Linux. Linux root ref ...

  7. linux 强制重启 sysrq,用Magic SysRq键实现Linux安全重启

    Magic SysRq是Linux内核中一个组合键(key combination),它允许用户可以忽略系统的状态而执行一些低级指令. 它常被用来从系统冻结状态中恢复过来或者重启电脑而不会破坏文件系统 ...

  8. linux tcp bind 失败,【技术分享】开发Linux上带有基本认证的TCP Bind Shell

    预估稿费:200RMB 投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿 一.前言 本文的目标是使用x64汇编语言开发一个带有密码认证的tcp_bind_shell,并且程序中不包 ...

  9. linux密码sha512,如何在Linux上检查SHA1,SHA256和SHA512哈希 | MOS86

    你如何知道你刚才下载的4 GB文件是否已经被传输没有错误?一种方法是使用产生一个的哈希算法像人类指纹一样,生成的字符串意味着是唯一的,只有该文件可以产生该指纹.像Fedora这样的Linux发行版,提 ...

最新文章

  1. Android 支付宝H5 没有回调
  2. React 虚拟Dom 转成 真实Dom 实现原理
  3. 测试使用2mH的工字型电感在接收150kHz导航信号中性能
  4. Oracle簇表介绍 (clustered table)
  5. 根目录_Linux Shell从入门到删除根目录跑路指南
  6. html录音并转为音频文件,HTML5音频API Web Audio
  7. 用vim看代码的常用指令
  8. JDK 9:模块系统状态的重点
  9. 羡慕的泪水!显卡对决!GPU A6000和RTX 3090 性能对比
  10. ci如何使用中$.ajax 中的 url 如何使用php的代码,CI框架中使用ajax操作数据库有关问题...
  11. 光耦817制作12v闪灯电路图_光电耦合器pc817中文资料及电路图
  12. Unity中屏幕坐标、视口坐标和世界坐标、局部坐标与其之间的相互转换
  13. Python中in的用法小结
  14. SpringCloud极简入门(三)服务提供者与消费者
  15. Egret 更改按钮图片(正常,按下,禁用)
  16. FPGA niosII 视频笔记--小梅
  17. 奋斗吧,程序员——第二十四章 想佳人、妆楼凝望,误几回、天际识归舟
  18. 【C++入门】烦人的引用
  19. html查看更多隐藏内容,jQuery点击显示隐藏更多文字内容插件jquery.morecontent.js
  20. 华为云空间費用_华为云空间怎么登录,有什么用?可惜99%的人都不知道

热门文章

  1. java反射基础_Java反射基础(一)--Class对象获取
  2. 二叉搜索树的删除操作可以交换吗_JavaScript数据结构 — 二叉搜索树(BST)ES6实现...
  3. python数据结构的列表_Python自带数据结构 列表(list)
  4. timespan怎么比较大小_万能小哥丨厨房墙砖哪种好?厨房墙砖怎么挑选?
  5. python 描述器 详解_深入解析Python中的descriptor描述器的作用及用法
  6. php正则表达式 n,CFC4N小试php正则表达式
  7. 百度统计 java 实现思路_211本+985硕+计算机专业投面百度,坐等一周迎来三面,已拿offer...
  8. python特征选择的过程_【来点干货】机器学习中常用的特征选择方法及非常详细的Python实例...
  9. python super详解_Python super 详解
  10. gprs模块http mqtt_在GPRS模块(SIM800C)和STM32芯片上实现MQTT协议 | TsonTec:测量解决方案提供者...