描述了 Debian 系统上用于转换数据格式的工具和技巧。
基于标准的工具状态良好,但对专有数据格式的支持有限。
以下用于文本数据转换的软件包引起了我的注意。
表 11.1. 文本数据转换工具列表
软件包 | popcon | 大小 | 关键词 | 描述 |
---|---|---|---|---|
libc6
|
http://qa.debian.org/popcon.php?package=libc6 | 9500 | 字符集 | 通过 iconv(1) 在区域设置之间进行文本编码转换器(基本) |
recode
|
http://qa.debian.org/popcon.php?package=recode | 768 | 字符集+eol | 在区域设置之间进行文本编码转换器(通用,更多别名和功能) |
konwert
|
http://qa.debian.org/popcon.php?package=konwert | 192 | 字符集 | 在区域设置之间进行文本编码转换器(花哨) |
nkf
|
http://qa.debian.org/popcon.php?package=nkf | 205 | 字符集 | 日语字符集转换器 |
tcs
|
http://qa.debian.org/popcon.php?package=tcs | 544 | 字符集 | 字符集转换器 |
unaccent
|
http://qa.debian.org/popcon.php?package=unaccent | 76 | 字符集 | 用其非重音等效字母替换重音字母 |
tofrodos
|
http://qa.debian.org/popcon.php?package=tofrodos | 67 | eol | DOS 和 Unix 之间的文本格式转换器:fromdos(1) 和 todos(1) |
macutils
|
http://qa.debian.org/popcon.php?package=macutils | 320 | eol | Macintosh 和 Unix 之间的文本格式转换器:frommac(1) 和 tomac(1) |
![]() |
提示 |
---|---|
iconv(1) 作为 |
您可以使用 iconv(1) 按如下方式转换文本文件的编码。
$ iconv -f encoding1 -t encoding2 input.txt >output.txt
编码值不区分大小写,匹配时忽略“-
”和“_
”。可以通过“iconv -l
”命令检查支持的编码。
表 11.2. 编码值及其用法列表
编码值 | 用法 |
---|---|
ASCII. | 美国信息交换标准代码,7 位代码,不带重音字符 |
UTF-8 | 当前所有现代操作系统的多语言标准 |
ISO-8859-1 | 西欧语言的旧标准,ASCII + 重音字符 |
ISO-8859-2 | 东欧语言的旧标准,ASCII + 重音字符 |
ISO-8859-15 | 西欧语言的旧标准,带有欧元符号的 ISO-8859-1 |
CP850 | 代码页 850,带有西欧语言图形的 Microsoft DOS 字符,ISO-8859-1 变体 |
CP932 | 代码页 932,Microsoft Windows 样式 Shift-JIS 日语变体 |
CP936 | 代码页 936,Microsoft Windows 样式 GB2312,GBK 或 GB18030 简体中文变体 |
CP949 | 代码页 949,Microsoft Windows 样式 EUC-KR 或统一韩语代码韩语变体 |
CP950 | 代码页 950,Microsoft Windows 样式 Big5 繁体中文变体 |
CP1251 | 代码页 1251,Microsoft Windows 样式西里尔字母编码 |
CP1252 | 代码页 1252,Microsoft Windows 样式 ISO-8859-15 西欧语言变体 |
KOI8-R | 西里尔字母的旧俄罗斯 UNIX 标准 |
ISO-2022-JP | 仅使用 7 位代码的日语电子邮件的标准编码 |
eucJP | 旧的日语 UNIX 标准 8 位代码,与 Shift-JIS 完全不同 |
Shift-JIS | 日语 JIS X 0208 附录 1 标准(请参阅 CP932) |
![]() |
注意 |
---|---|
某些编码仅支持数据转换,不作为区域设置值使用(第 8.3.1 节,“编码基础知识”)。 |
对于适合单字节的字符集,例如 ASCII 和 ISO-8859 字符集,字符编码 与字符集几乎是同一回事。
对于具有许多字符的字符集,例如日语的 JIS X 0213 或实际上所有语言的 通用字符集(UCS、Unicode、ISO-10646-1),有许多编码方案可以将它们放入字节数据序列中。
Unicode 的 UTF-8、UTF-16/UCS-2 和 UTF-32/UCS-4
对于这些,字符集和字符编码之间有明显的区别。
代码页 用作某些特定于供应商的字符编码表的同义词。
![]() |
注意 |
---|---|
请注意,大多数编码系统对于 7 位字符都与 ASCII 共享相同的代码。但也有一些例外。如果要将旧的日语 C 程序和 URL 数据从随意称为 shift-JIS 编码格式转换为 UTF-8 格式,请使用“ |
![]() |
提示 |
---|---|
也可以使用 recode(1),它提供的功能比 iconv(1)、fromdos(1)、todos(1)、frommac(1) 和 tomac(1) 的组合功能还要多。有关更多信息,请参阅“ |
您可以使用 iconv(1) 按如下方式检查文本文件是否以 UTF-8 编码。
$ iconv -f utf8 -t utf8 input.txt >/dev/null || echo "non-UTF-8 found"
![]() |
提示 |
---|---|
在上面的示例中使用“ |
这是一个示例脚本,用于将单个目录中较旧操作系统下创建的文件名的编码转换为现代 UTF-8 编码。
#!/bin/sh ENCDN=iso-8859-1 for x in *; do mv "$x" "$(echo "$x" | iconv -f $ENCDN -t utf-8)" done
应该通过 表 11.2,“编码值及其用法列表” 中的编码值设置“$ENCDN
”变量。
对于更复杂的情况,请使用正确的编码作为 mount(8) 选项挂载包含此类文件名的文件系统(例如,磁盘驱动器上的分区)(请参阅 第 8.3.6 节,“文件名编码”),并使用“cp -a
”命令将其全部内容复制到另一个以 UTF-8 挂载的文件系统。
文本文件格式,特别是行尾 (EOL) 代码,取决于平台。
表 11.3. 不同平台的 EOL 样式列表
平台 | EOL 代码 | 控制字符 | 十进制 | 十六进制 |
---|---|---|---|---|
Debian (unix) | LF |
^J
|
10 | 0A |
MSDOS 和 Windows | CR-LF |
^M^J
|
13 10 | 0D 0A |
Apple 的 Macintosh | CR |
^M
|
13 | 0D |
EOL 格式转换程序 fromdos(1)、todos(1)、frommac(1) 和 tomac(1) 非常方便。recode(1) 也很有用。
![]() |
注意 |
---|---|
Debian 系统上的一些数据,例如 |
![]() |
注意 |
---|---|
大多数编辑器(例如 |
![]() |
提示 |
---|---|
当您要将 EOL 样式从混合的 MSDOS 和 Unix 样式统一为 MSDOS 样式时,使用“ |
很少有流行的专用程序来转换制表符代码。
表 11.4. 来自 bsdmainutils
和 coreutils
软件包的 TAB 转换命令列表
功能 |
bsdmainutils
|
coreutils
|
---|---|---|
将制表符展开为空格 | “col -x ” |
expand
|
从空格取消展开制表符 | “col -h ” |
unexpand
|
来自 indent
软件包的 indent(1) 完全重新格式化 C 程序中的空格。
编辑器程序(如 vim
和 emacs
)也可以用于 TAB 转换。例如,使用 vim
,您可以使用“:set expandtab
”和“:%retab
”命令序列展开 TAB。您可以使用“:set noexpandtab
”和“:%retab!
”命令序列恢复此操作。
智能的现代编辑器(如 vim
程序)非常智能,可以很好地处理任何编码系统和任何文件格式。您应该在 UTF-8 区域设置下在支持 UTF-8 的控制台中使用这些编辑器,以获得最佳兼容性。
可以简单地使用 vim
编辑以 latin1 (iso-8859-1) 编码存储的旧西欧 Unix 文本文件“u-file.txt
”,方法如下。
$ vim u-file.txt
这是可能的,因为 vim
中文件编码的自动检测机制首先假定为 UTF-8 编码,如果失败,则假定为 latin1。
可以使用 vim
编辑以 latin2 (iso-8859-2) 编码存储的旧波兰 Unix 文本文件“pu-file.txt
”,方法如下。
$ vim '+e ++enc=latin2 pu-file.txt'
可以使用 vim
编辑以 eucJP 编码存储的旧日语 unix 文本文件“ju-file.txt
”,方法如下。
$ vim '+e ++enc=eucJP ju-file.txt'
可以使用 vim
编辑以所谓的 shift-JIS 编码(更准确地说:CP932)存储的旧日语 MS-Windows 文本文件“jw-file.txt
”,方法如下。
$ vim '+e ++enc=CP932 ++ff=dos jw-file.txt'
当使用“++enc
”和“++ff
”选项打开文件时,Vim 命令行中的“:w
”以原始格式存储该文件并覆盖原始文件。您还可以在 Vim 命令行中指定保存格式和文件名,例如“:w ++enc=utf8 new.txt
”。
请参阅 vim
在线帮助中的 mbyte.txt “多字节文本支持”以及 表 11.2,“编码值及其用法列表”,了解与“++enc
”一起使用的区域设置值。
emacs
系列程序可以执行等效的功能。
以下内容将网页读入文本文件。这在从 Web 复制配置或在网页上应用基本的 Unix 文本工具(如 grep(1))时非常有用。
$ w3m -dump http://www.remote-site.com/help-info.html >textfile
类似地,您可以使用以下方法从其他格式提取纯文本数据。
表 11.5. 提取纯文本数据的工具列表
您可以使用以下方法突出显示和格式化纯文本数据。
表 11.6. 突出显示纯文本数据的工具列表
可扩展标记语言 (XML) 是一种用于包含结构化信息的文档的标记语言。
请参阅 XML.COM 上的介绍性信息。
XML 文本看起来有点像 HTML。它使我们能够管理文档的多种输出格式。一个简单的 XML 系统是 docbook-xsl
软件包,这里使用了它。
每个 XML 文件都以标准 XML 声明开头,如下所示。
<?xml version="1.0" encoding="UTF-8"?>
一个 XML 元素的基本语法标记如下。
<name attribute="value">content</name>
内容为空的 XML 元素以下列简短形式标记。
<name attribute="value"/>
以上示例中的“attribute="value"
”是可选的。
XML 中的注释部分标记如下。
<!-- comment -->
除了添加标记之外,XML 还需要使用以下字符的预定义实体对内容进行少量转换。
表 11.7. XML 的预定义实体列表
预定义实体 | 要转换的字符 |
---|---|
"
|
" : 引号 |
'
|
' : 撇号 |
<
|
< : 小于号 |
>
|
> : 大于号 |
&
|
& : & 符号 |
![]() |
注意 |
---|---|
“ |
![]() |
注意 |
---|---|
当使用 SGML 样式用户定义的实体(例如“ |
![]() |
注意 |
---|---|
只要 XML 标记与某些标签名称集(作为内容或属性值)一致地完成,使用 可扩展样式表语言转换 (XSLT) 转换为另一个 XML 就是一项简单的任务。 |
有许多工具可用于处理 XML 文件,例如 可扩展样式表语言 (XSL)。
基本上,一旦您创建了格式良好的 XML 文件,您就可以使用 可扩展样式表语言转换 (XSLT) 将其转换为任何格式。
可扩展样式表语言格式化对象 (XSL-FO) 应该用于格式化。fop
软件包仍在 Debian contrib
(非 main
)存档中。因此,LaTeX 代码通常从 XML 使用 XSLT 生成,并且 LaTeX 系统用于创建可打印文件,例如 DVI、PostScript 和 PDF。
表 11.8. XML 工具列表
软件包 | popcon | 大小 | 关键词 | 描述 |
---|---|---|---|---|
docbook-xml
|
http://qa.debian.org/popcon.php?package=docbook-xml | 2488 | xml | DocBook 的 XML 文档类型定义 (DTD) |
xsltproc
|
http://qa.debian.org/popcon.php?package=xsltproc | 165 | xslt | XSLT 命令行处理器(XML→ XML、HTML、纯文本等) |
docbook-xsl
|
http://qa.debian.org/popcon.php?package=docbook-xsl | 11589 | xml/xslt | 用于使用 XSLT 将 DocBook XML 处理为各种输出格式的 XSL 样式表 |
xmlto
|
http://qa.debian.org/popcon.php?package=xmlto | 134 | xml/xslt | 带有 XSLT 的 XML 到任何格式的转换器 |
dblatex
|
http://qa.debian.org/popcon.php?package=dblatex | 6799 | xml/xslt | 使用 XSLT 将 Docbook 文件转换为 DVI、PostScript、PDF 文档 |
fop
|
http://qa.debian.org/popcon.php?package=fop | 90 | xml/xsl-fo | 将 Docbook XML 文件转换为 PDF |
由于 XML 是 标准通用标记语言 (SGML) 的子集,因此可以使用 SGML 的广泛工具对其进行处理,例如 文档样式语义和规范语言 (DSSSL)。
表 11.9. DSSL 工具列表
软件包 | popcon | 大小 | 关键词 | 描述 |
---|---|---|---|---|
openjade
|
http://qa.debian.org/popcon.php?package=openjade | 1063 | dsssl | ISO/IEC 10179:1996 标准 DSSSL 处理器(最新) |
openjade1.3
|
http://qa.debian.org/popcon.php?package=openjade1.3 | 2226 | dsssl | ISO/IEC 10179:1996 标准 DSSSL 处理器(1.3.x 系列) |
jade
|
http://qa.debian.org/popcon.php?package=jade | 872 | dsssl | James Clark 的原始 DSSSL 处理器(1.2.x 系列) |
docbook-dsssl
|
http://qa.debian.org/popcon.php?package=docbook-dsssl | 3100 | xml/dsssl | 用于使用 DSSSL 将 DocBook XML 处理为各种输出格式的 DSSSL 样式表 |
docbook-utils
|
http://qa.debian.org/popcon.php?package=docbook-utils | 220 | xml/dsssl | DocBook 文件的实用程序,包括使用 DSSSL 的 docbook2* 命令转换为其他格式(HTML、RTF、PS、man、PDF) |
sgml2x
|
http://qa.debian.org/popcon.php?package=sgml2x | 216 | SGML/dsssl | 使用 DSSSL 样式表从 SGML 和 XML 进行转换 |
您可以使用以下方法从其他格式提取 HTML 或 XML 数据。
表 11.10. XML 数据提取工具列表
对于非 XML HTML 文件,您可以将它们转换为 XHTML,XHTML 是格式良好的 XML 的一个实例。XHTML 可以通过 XML 工具进行处理。
表 11.11. XML 漂亮打印工具列表
软件包 | popcon | 大小 | 关键词 | 描述 |
---|---|---|---|---|
libxml2-utils
|
http://qa.debian.org/popcon.php?package=libxml2-utils | 139 | xml↔html↔xhtml | 带有 xmllint(1) 的命令行 XML 工具(语法检查、重新格式化、lint 等) |
tidy
|
http://qa.debian.org/popcon.php?package=tidy | 82 | xml↔html↔xhtml | HTML 语法检查器和重新格式化程序 |
生成正确的 XML 后,您可以使用 XSLT 技术根据标记上下文等提取数据。
可打印数据在 Debian 系统上以 PostScript 格式表示。通用 Unix 打印系统 (CUPS) 使用 Ghostscript 作为其非 PostScript 打印机的光栅化后端程序。
可打印数据操作的核心是 Ghostscript PostScript (PS) 解释器,它生成栅格图像。
来自 Artifex 的最新上游 Ghostscript 已从 AFPL 重新许可为 GPL,并将所有最新的 ESP 版本更改(例如 CUPS 相关的更改)在 8.60 版本中合并为统一版本。
表 11.12. Ghostscript PostScript 解释器列表
![]() |
提示 |
---|---|
“ |
您可以使用 Ghostscript 的 gs(1) 合并两个 PostScript (PS) 或 可移植文档格式 (PDF) 文件。
$ gs -q -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=bla.ps -f foo1.ps foo2.ps $ gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=bla.pdf -f foo1.pdf foo2.pdf
![]() |
提示 |
---|---|
对于命令行, |
以下用于可打印数据实用程序的软件包引起了我的注意。
表 11.13. 可打印数据实用程序列表
通用 Unix 打印系统 (CUPS) 提供的 lp(1) 和 lpr(1) 命令都提供了自定义打印可打印数据的选项。
您可以使用以下命令之一打印 3 份已整理的文件。
$ lp -n 3 -o Collate=True filename
$ lpr -#3 -o Collate=True filename
您可以通过使用打印机选项(例如“-o number-up=2
”、“-o page-set=even
”、“-o page-set=odd
”、“-o scaling=200
”、“-o natural-scaling=200
”等)来进一步自定义打印机操作,这些选项记录在 命令行打印和选项 中。
最初由 AT&T 开发的 Unix troff 程序可用于简单排版。它通常用于创建手册页。
Donald Knuth 创建的 TeX 是非常强大的排版工具,并且是事实上的标准。LaTeX 最初由 Leslie Lamport 编写,可以高级别地访问 TeX 的强大功能。
表 11.14. 排版工具列表
软件包 | popcon | 大小 | 关键词 | 描述 |
---|---|---|---|---|
texlive
|
http://qa.debian.org/popcon.php?package=texlive | 103 | (La)TeX | 用于排版、预览和打印的 TeX 系统 |
groff
|
http://qa.debian.org/popcon.php?package=groff | 8095 | troff | GNU troff 文本格式化系统 |
传统上,roff 是主要的 Unix 文本处理系统。请参阅 roff(7)、groff(7)、groff(1)、grotty(1)、troff(1)、groff_mdoc(7)、groff_man(7)、groff_ms(7)、groff_me(7)、groff_mm(7) 和 “info groff
”。
您可以通过安装 groff
软件包,在 “/usr/share/doc/groff/
” 中阅读或打印有关 “-me
” 宏 的良好教程和参考。
![]() |
提示 |
---|---|
“ |
![]() |
提示 |
---|---|
要从 |
TeX Live 软件发行版提供了完整的 TeX 系统。texlive
元软件包提供了 TeX Live 软件包的合理选择,这些软件包应足以满足最常见的任务。
tex(1)
latex(1)
“The TeXbook”,作者 Donald E. Knuth,(Addison-Wesley)
“LaTeX - 文档准备系统”,作者 Leslie Lamport,(Addison-Wesley)
“The LaTeX Companion”,作者 Goossens、Mittelbach、Samarin,(Addison-Wesley)
这是最强大的排版环境。许多 SGML 处理器使用它作为其后端文本处理器。Lyx 由 lyx
软件包提供,GNU TeXmacs 由 texmacs
软件包提供,为 LaTeX 提供了不错的 WYSIWYG 编辑环境,而许多人使用 Emacs 和 Vim 作为源代码编辑器的选择。
有许多在线资源可用。
TEX Live 指南 - TEX Live 2007(“/usr/share/doc/texlive-doc-base/english/texlive-en/live.html
”)(texlive-doc-base
软件包)
当文档变得更大时,有时 TeX 可能会导致错误。您必须增加 “/etc/texmf/texmf.cnf
” 中的池大小(或更适当地编辑 “/etc/texmf/texmf.d/95NonPath
” 并运行 update-texmf(8))来解决此问题。
![]() |
注意 |
---|---|
“The TeXbook” 的 TeX 源代码可在 http://tug.ctan.org/tex-archive/systems/knuth/dist/tex/texbook.tex 获得。 |
该文件包含大多数必需的宏。我听说您可以通过注释掉第 7 行到第 10 行并添加 “\input manmac \proofmodefalse
” 后,使用 tex(1) 处理此文档。强烈建议购买本书(以及 Donald E. Knuth 的所有其他书籍),而不是使用在线版本,但源代码是 TeX 输入的一个很好的例子!
您可以使用以下命令之一以 PostScript 格式精美地打印手册页。
$ man -Tps some_manpage | lpr
$ man -Tps some_manpage | mpage -2 | lpr
第二个示例在一张纸上打印 2 页。
虽然可以用纯 troff 格式编写手册页 (manpage),但有一些辅助软件包可以创建它。
表 11.15. 帮助创建手册页的软件包列表
软件包 | popcon | 大小 | 关键词 | 描述 |
---|---|---|---|---|
docbook-to-man
|
http://qa.debian.org/popcon.php?package=docbook-to-man | 213 | SGML→manpage | 从 DocBook SGML 转换为 roff man 宏的转换器 |
help2man
|
http://qa.debian.org/popcon.php?package=help2man | 485 | 文本→manpage | 从 --help 自动生成手册页 |
info2man
|
http://qa.debian.org/popcon.php?package=info2man | 161 | info→manpage | 从 GNU info 转换为 POD 或 man 页面的转换器 |
txt2man
|
http://qa.debian.org/popcon.php?package=txt2man | 88 | 文本→manpage | 将纯 ASCII 文本转换为 man 页面格式 |
以下用于邮件数据转换的软件包引起了我的注意。
表 11.16. 帮助邮件数据转换的软件包列表
软件包 | popcon | 大小 | 关键词 | 描述 |
---|---|---|---|---|
sharutils
|
http://qa.debian.org/popcon.php?package=sharutils | 1408 | shar(1), unshar(1), uuencode(1), uudecode(1) | |
mpack
|
http://qa.debian.org/popcon.php?package=mpack | 109 | MIME | 编码器和解码器 MIME 消息:mpack(1) 和 munpack(1) |
tnef
|
http://qa.debian.org/popcon.php?package=tnef | 132 | ms-tnef | 解包类型为 “application/ms-tnef” 的 MIME 附件,这是一种仅限 Microsoft 的格式 |
uudeview
|
http://qa.debian.org/popcon.php?package=uudeview | 117 | 以下格式的编码器和解码器:uuencode、xxencode、BASE64、quoted printable 和 BinHex | |
readpst
|
http://qa.debian.org/popcon.php?package=readpst | 228 | PST | 将 Microsoft Outlook PST 文件 转换为 mbox 格式 |
![]() |
提示 |
---|---|
如果邮件客户端软件也可以配置为使用 IMAP4 服务器,则可以使用 Internet 消息访问协议 版本 4 (IMAP4) 服务器(请参阅 第 6.7 节,“POP3/IMAP4 服务器”)将邮件从专有邮件系统中移出。 |
邮件 (SMTP) 数据应限制为 7 位。因此,二进制数据和 8 位文本数据使用 多用途 Internet 邮件扩展 (MIME) 和字符集选择(请参阅 第 8.3.1 节,“编码基础知识”)编码为 7 位格式。
标准邮件存储格式是根据 RFC2822(更新的 RFC822) 格式化的 mbox。请参阅 mbox(5)(由 mutt
软件包提供)。
对于欧洲语言,由于 8 位字符不多,因此通常将带有 ISO-8859-1 字符集的“Content-Transfer-Encoding: quoted-printable
”用于邮件。如果欧洲文本以 UTF-8 编码,则可能会使用 “Content-Transfer-Encoding: quoted-printable
”,因为它主要是 7 位数据。
对于日语,传统上通常使用 “Content-Type: text/plain; charset=ISO-2022-JP
” 用于邮件,以将文本保持在 7 位。但是较旧的 Microsoft 系统可能会在没有正确声明的情况下以 Shift-JIS 发送邮件数据。如果日语文本以 UTF-8 编码,则很可能会使用 Base64,因为它包含许多 8 位数据。其他亚洲语言的情况类似。
![]() |
注意 |
---|---|
如果您的非 Unix 邮件数据可以通过可以与 IMAP4 服务器对话的非 Debian 客户端软件访问,则您可以通过运行自己的 IMAP4 服务器(请参阅 第 6.7 节,“POP3/IMAP4 服务器”)将它们移出。 |
![]() |
注意 |
---|---|
如果您使用其他邮件存储格式,则将它们移动到 mbox 格式是好的第一步。通用客户端程序(例如 mutt(1))可能对此很方便。 |
您可以使用 procmail(1) 和 formail(1) 将邮箱内容拆分为每条消息。
可以使用 mpack
软件包中的 munpack(1)(或其他专用工具)解包每封邮件消息,以获取 MIME 编码的内容。
以下用于图形数据转换、编辑和组织工具的软件包引起了我的注意。
表 11.17. 图形数据工具列表
![]() |
提示 |
---|---|
在 aptitude(8) 中使用正则表达式 “ |
虽然 gimp(1) 等 GUI 程序非常强大,但 imagemagick(1) 等命令行工具对于使用脚本自动化图像处理非常有用。
数码相机的事实图像文件格式是 可交换图像文件格式 (EXIF),它是带有附加元数据标签的 JPEG 图像文件格式。它可以保存日期、时间和相机设置等信息。
Lempel-Ziv-Welch (LZW) 无损数据压缩 专利已过期。现在可以在 Debian 系统上免费使用使用 LZW 压缩方法的 图形交换格式 (GIF) 实用程序。
![]() |
提示 |
---|---|
任何带有可移动记录介质的数码相机或扫描仪都可以通过 USB 存储 读取器与 Linux 一起使用,因为它遵循 相机文件系统设计规则 并使用 FAT 文件系统。请参阅 第 10.1.10 节,“可移动存储设备”。 |
还有许多其他程序用于转换数据。以下软件包使用 aptitude(8) 中的正则表达式 “~Guse::converting
” 引起了我的注意(请参阅 第 2.2.6 节,“使用 aptitude 的搜索方法选项”)。
表 11.18. 其他数据转换工具列表
软件包 | popcon | 大小 | 关键词 | 描述 |
---|---|---|---|---|
alien
|
http://qa.debian.org/popcon.php?package=alien | 209 | rpm/tgz→deb | 用于将外国软件包转换为 Debian 软件包的转换器 |
freepwing
|
http://qa.debian.org/popcon.php?package=freepwing | 568 | EB→EPWING | 从 “Electric Book”(在日本流行)到单个 JIS X 4081 格式(EPWING V1 的子集)的转换器 |
您还可以使用以下方法从 RPM 格式中提取数据。
$ rpm2cpio file.src.rpm | cpio --extract