当我在 Firefox 中将网页打印为 PDF 时,它会保存文件,但.pdf
名称中没有扩展名。我安装了各种附加组件,但结果都一样。
我不想用文件管理器手动重命名我的文件。
是否有某个设置可以改变这种行为,以便文件名始终以“.pdf”为后缀?
我如何设置它在创建文件后自动使用默认 PDF 查看器打开它?
答案1
您只需简单地将.pdf
后缀添加到您自己选择的文件名即可。
在 Linux 系统上,文件不是根据扩展名来判断的,而是根据内容或实际上是根据内容的前几个字节来判断的。这样,它就可以确定用什么应用程序打开文件,而不必依赖名称。这对 Windows 用户来说可能听起来很混乱,但效果很好。
因此,只要您在 Ubuntu 系统上只需要该 PDF 文档,就无需扩展,除非您不需要它。如果您想在 Windows 上打开它,您可以nautilus
随后手动重命名该文件(例如使用文件管理器)。
.pdf
或者如我之前所说,直接在打印对话框中输入包括扩展名在内的全名。它甚至会记住您最后使用的名称(或默认为mozilla.pdf
,这可能取决于版本),这样您就可以保留扩展名并仅覆盖基本名称。
答案2
Firefox 自带 PDF 打印机,效果很好,但另一种选择是使用 CUPS PDF 打印机(我认为是cups-pdf
包)。这将适用于所有可以通过添加额外的打印机来打印的应用程序,该打印机输出 PDF 文件(我认为默认情况下在桌面上) - 它还会根据标题自动添加适当的文件名(例如Automatically_add___pdf__extension_and_open_resulting_file_when_.pdf
)
要自动打开文件,可以通过定义打印机(使用脚本)将页面转换为 PDF(使用 GhostScript 或其他程序),保存它,然后打开默认 PDF 查看器。应该可以通过检查 Cups PDF 打印机包安装的文件来了解如何添加打印机,或者也可以通过使用 Cups 命令来自定义 PPD 文件(请参阅这里)
答案3
步骤 4 中的命令使用脚本监视您的下载文件夹(参见步骤 2)。脚本检查新添加文件的 mimetype。如果文件是 PDF,则在必要时添加后缀,然后打开文件。
安装软件包 inoticoming
sudo apt-get install inoticoming
创建包装器脚本
handlePdfDownload
mkdir -p ~/bin nano ~/bin/handlePdfDownload
添加以下代码
#!/usr/bin/env bash FILE="$1" FOLDER="$2" if [ "$(mimetype -b "$FOLDER/$FILE")" != "application/pdf" ]; then exit 1 fi if [ "${FILE##*.}" != "pdf" ]; then mv "$FOLDER/$FILE" "$FOLDER/$FILE.pdf" fi xdg-open "$FOLDER/$FILE.pdf" exit 0
设置可执行位
chmod +x ~/bin/handlePdfDownload
查看你的
Downloads
文件夹inoticoming ~/Downloads ~/bin/handlePdfDownload {} ~/Downloads \;