金灵异

 找回密码
 立即注册

搜索

Calibre 常用命令行工具详解之 ebook-convert

kindle用户
kindle用户  发表于 2018-11-25 03:05:53 |阅读模式
  全能型电子书管理软件 Calibre 除了有可视化操作界面,还附带了一系列命令行工具(Command Line Inte**ce),这些工具功能独立且实用。如果你熟悉命令行的使用,并且想要在处理电子书方面提高效率,抑或想要把一些和电子书处理相关的工作自动化,这些工具将会对你很有帮助。本文从 Calibre 提供的这些命令行工具中挑选了常用的 3 款,分别为:ebook-meta、ebook-convert、calibre-smtp,详细介绍它们如何使用,以及都适用于哪些应用场景。这些内容需要你懂一点点命令行知识。

  目录

  一、元数据命令:ebook-meta

  1、读取电子书元数据

  2、写入电子书元数据

  二、格式转换命令:ebook-convert

  1、基本用法

  2、转换示例

  3、可用选项

  4、应用场景

  三、邮件推送命令:calibre-smtp

  1、基本用法

  2、转换示例

  3、可用选项

  4、应用场景

  本文涉及的命令行工具需要在“命令提示符”(Windows 系统)或“终端”(macOS 或 Linux 系统)中使用。如果电脑是 Windows 系统,一般在安装好 Calibre 之后就可以使用。如果电脑是 macOS 或 Linux 系统,安装 Calibre 之后需要手动把命令行工具的路径添加到系统变量中才能直接使用。

  二、格式转换命令:ebook-convert

  ebook-convert 可以说是 Calibre 最为核心的一个功能,也是小伙伴最常用到的功能,它的作用就是把一本电子书从一种格式转换成另一种格式,带界面的 Calibre 转换电子书格式也是通过调用它来实现的。其实命令行下的 ebook-convert 用起来更快捷,占用资源更小。下面就随书伴来详细了解一下吧。

  1、基本用法

  Calibre 官方文档给出的 ebook-convert 的指令用法如下:

  ebook-convert input_file output_file [options]

  转换格式指令有 2 个必填参数和多个可选项。其中 input_file 是输入文件格式,output_file 是输出文件格式,[options] 是针对输入、输出文件格式的可用选项,在未手动定义可选项的情况下,这些可选项均会采用默认值,默认值会随着不同输入输出格式而变化。后面会对这些可选项做详细解释。

  ebook-convert 默认支持的输入文件格式包括:azw4, chm, comic, djvu, docx, epub, fb2, htlz, html, lit, lrf, mobi, odt, pdb, pdf, pml, rb, rtf, recipe, snb, tcr, txt;默认支持的输出文件格式包括:azw3, docx, epub, fb2, html, htmlz, lit, lrf, mobi, oeb, pdb, pdf, pml, rb, rtf, snb, tcr, txt, txtz。

  ebook-convert 输出文件的格式是通过指定输出文件名的后缀确定的。比如你在指令中把输出文件名指定为 example.azw3,那么输出的文件就是 AZW3 格式,指定为 example.mobi 就是 MOBI 格式。

  如果输出文件名没有指定后缀名,ebook-convert 就会视其为文件夹(不能存在的会自动创建),并将输入的电子书文件转换成由 HTML 文件组成的 Open eBook(OEB)输出到此文件夹中,这些文件通常会被传给输出插件。这种操作很像 KindleUnpack 的功能,能把电子书拆解成源文件。

  注意,不论输入还是输出,其路径或文件名均不能以连字符“-”开头,含有空格的须将其放入引号。

  2、转换示例

  假设把文件名为“example.epub”的 ePub 格式电子书转换成 MOBI 格式,可直接执行以下指令:

  ebook-convert example.epub example.mobi

  这里有个小技巧,如果想要让转换前后的文件名相同,输出文件名只需要输入后缀名即可,如下所示:

  ebook-convert example.epub .mobi

  除了不同格式之间相互转换,ebook-convert 还能利用脚本抓取 RSS 或抓取 HTML 页面制成电子书。书伴之前曾写过一个 ebook-convert 的用例,即《Calibre 使用教程之抓取网站页面制成电子书》这篇文章,里面介绍了如何通过编写的 Recipe 脚本转制电子书。除了手动编写脚本,Calibre 还内置了一些现成的脚本,这些内置脚本可以通过 ebook-convert 的一个特殊可选项 --list-recipes 列出,指令如下所示:

  ebook-convert --list-recipts

  * 注:在 macOS 或 Linux 系统中,为方便在终端中浏览较长的列表,可以在指令后面加个参数 | less。

  和自己编写脚本不同得是,这些内置的脚本不需要指定路径,可以直接被 ebook-convert 调用,比如你找到了感兴趣的内容源,直接在源名加 .recipe 就可以将其转换成电子书了,指令如下所示:

  ebook-convert 'The Economist.recipe' 'The Economist.mobi'

  需要注意的是,这些内容源大都来自国外站点,有一些内容源的脚本可能需要科学上网才能正常使用。

  3、可用选项

  ebook-convert 指令中的 [options],其作用是通过指定不同的可选项来自定义当前的转换,你可以通过这些预置的可选项更精确地控制输入输出。这些可选项有通用可选项,还有针对取决于不同输入输出格式的可选项。在执行转换指令时,可在其后加上一个参数 -h 查看可用选项的详细解释,如下所示:

  ebook-convert example.txt example.mobi -h

  比如当你输入上面这条指令,就可以看到有关输入文件格式 TXT 和输出文件格式 MOBI 相关的可选项及其详细说明。当然如果你想了解所有可选项的详细说明,也可以前往 Calibre 官方帮助页面浏览。

  为方便查询,书伴把 ebook-convert 的通用可选项(包含:界面外观、智能处理、查找并替换、结构检测、目录、元数据、调试)以及和 Kindle 电子书格式转换相关可选项的详细解释罗列如下:

  3.1、适配设置:

  --input-profile=INPUT_PROFILE

  设置输入配置文件。此配置文件让程序了解如何解析输入文件并进行转换。例如页面分辨率(i.e. 以像素为单位)。可选项有:cybookg3、cybook_opus、default、hanlinv3、hanlinv5、illiad、irexdr1000、irexdr800、kindle、msreader、mobipocket、nook、sony、sony300、sony900。

  --output-profile=OUTPUT_PROFILE

  设置输出配置文件。输出配置文件可以让转换系统针对指定的设备优化文档(例如通过根据设备屏幕大小缩放图片)。在某些情况下,可以用输出配置文件对特定设备优化输出,但几乎没有必要。可选项有:cybookg3、cybook_opus、default、generic_eink、generic_eink_hd、generic_eink_large、hanlinv3、hanlinv5、illiad、ipad、ipad3、irexdr1000、irexdr800、jetbook5、kindle、kindle_dx、kindle_fire、kindle_oasis、kindle_pw、kindle_pw3、kindle_voyage、kobo、msreader、mobipocket、nook、nook_color、nook_hd_plus、pocketbook_900、pocketbook_pro_912、galaxy、sony、sony300、sony900、sony-landscape、sonyt3、tablet。

  【 可用项内容较长,默认已隐藏,点我展开 】

  以上这些 ebook-convert 的可选项的中文解释均摘自其命令提示符中的帮助文档,原文档中未译成中文的不分由书伴翻译,可能有不准确的地方,如在阅读的过程中看到敬请指出。

  4、应用场景

  灵活使用 ebook-convert 这个命令行工具可以在很多自动化工作中发挥作用,比如使用脚本批量转换电子书,定时执行脚本抓取新闻并推送到 Kindle 中等。具体如何应用,今后书伴会陆续推出相关文章。

  ————–

  接下来要介绍的是 calibre-smtp。未完待续……

  【 外刊杂志 】 仅 39 元即可获得 1 年 MOBI 格式《经济学人》杂志,新刊自动发送到指定邮箱。

  【 凑钱买书 】 对于较贵的电子书,以期望的价格与其他人一起凑钱购买。(点我看看都有些啥)

  “Calibre教程”延伸阅读:

  如何把 KFX 格式转换成 MOBI 等其它电子书格式

  Calibre 使用教程之为 Kindle 电子书添加页码

  Calibre 常用命令行工具详解之 calibre-smtp

  Calibre 使用教程之把合集电子书拆分成单本

  解决 Calibre 推送“500 Error: bad syntax”错误

  Calibre 常用命令行工具详解之 ebook-meta

  Calibre 使用教程之抓取网站页面制成电子书

  Calibre 使用教程之批量获取电子书元数据

  Calibre 发布 3.0 版本(附常用功能梳理)

  如何解决 kindle 电子书字体颜色浅淡的问题

*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

本站所有内容均来自网友分享,不代表本站任何观点。

© 2019 jinfopai.com

快速回复 返回顶部 返回列表