首页 Linux网维 Linux下三款流行的命令行文件转换工具

Linux下三款流行的命令行文件转换工具

最近,一位朋友天真地问我计算机世界中到底共有多少种文件格式。我半认真半开玩笑地回应,“一个汤碗装满海滩沙子后对应的沙粒的总数也就是这个世界上文件格式的总数。” 好吧,自然没有那么多…

最近,一位朋友天真地问我计算机世界中到底共有多少种文件格式。我半认真半开玩笑地回应,“一个汤碗装满海滩沙子后对应的沙粒的总数也就是这个世界上文件格式的总数。”

Linux下三款流行的命令行文件转换工具插图

好吧,自然没有那么多的文件格式(https://en.wikipedia.org/wiki/List_of_file_formats)即便如此,你可能从未听说过像维基百科上所列举的那么多的常用的文件格式。

现实情况是,你会永远看不到而且也永远不会使用那么多的文件类型然而,如果你想要或需要实现文件格式之间的相互转换,那么确实存在不少这方面的工具程序供你选用下面,让我们来学习三种流行的Linux平台上的命令行文件类型转换工具。

Pandoc

Linux下三款流行的命令行文件转换工具插图1

所有我认识的使用标记语言的用户都说Pandoc(http://pandoc.org/)是转换这些语言的最常用工具其实,这里有一个很好的理由:Pandoc不只是支持实现一些非常漂亮的转换,而且转换速度也非常快。

你是否有一个Markdown格式的文件想要转换为LibreOffice Writer文档格式?或者,有一个LaTeX文档你想要转换成一个EPUB文档?或者,也许你有一个HTML文件想转换成一个幻灯片Pandoc能够胜任所有这些任务;当然,还有更多的功能。

下面给出的是使用Pandoc进行简单的文件格式转换的一个例子(在本例中实现从HTML格式转换为reStructuredText格式):pandoc -t rst myFile.html -o myFile.rst

其实,你不只是限于直接转换例如,你还可以向生成的结果文件中添加内容表格、印刷引用、自定义标题及语法高亮显示等有关细节,请查阅Pandoc的参考文档(http://pandoc.org/MANUAL.html#options。

)然而,需要注意的是,Pandoc只能够处理基于文本的文件如果你有一个二进制文件,如字处理器文档文件时,会发生什么呢?在命令行运行时将显示用户提供的是一个意想不到的文件源这样的提示LibreOffice。

Linux下三款流行的命令行文件转换工具插图2

您可能会想,“停住!LibreOffice(http://libreoffice.org/)是一个GUI应用程序不错,的确如此但是,很多人不知道的是,你也可以从命令行运行LibreOffice来快速转换一个或多个文件。

那么,如何使用LibreOffice呢?举例来说,若要使用LibreOffice把一组幻灯片转换成PDF,你可以使用如下命令行内容:soffice –headless –convert-to pdf mySlides.odp

在此,你只需将pdf扩展名替换成任何你想要转换的文件格式的扩展名即可至于–headless选项,其作用是防止在运行上述命令时在您的桌面上打开一个空的LibreOffice窗口在命令行上使用LibreOffice转换单个文件格式有点小题大做。

然而,在命令行下一次转换多个文件是一种不错的方式例如,如果你想要将某文件夹中所有的微软Word文档转换为LibreOffice Writer文件格式,你只要使用如下命令即可:soffice –headless –convert-to odt *.docx

这种命令行方式转换所需要的时间远远少于在LibreOffice Writer软件中打开所有这些文件并手动进行转换的时间。FFmpeg

Linux下三款流行的命令行文件转换工具插图3

如果说Pandoc是实现标记语言之间进行转换的瑞士军刀,那么FFmpeg就相当于Pandoc在音频和视频格式文件转换领域的“瑞士军刀”FFmpeg是一组库和可执行文件的集合,借助于此工具你能够实现几乎任何格式文件间的相互转换。

下面给出的是使用FFmpeg把一个AVI格式的视频文件转换为一个Ogg格式的视频文件的使用举例:ffmpeg -i myVideo.avi myvideo.ogg其实,FFmpeg的功能比这要复杂的多例如,你可以设置视频的帧速率并向其中添加字幕,更改纵横比,改变音频,以及更多的控制。

如果你选择使用多个控制选项时,命令行就会变得相当拥挤特别是,当你只使用FFmpeg的如上述这样少数几个选项时,很容易忘记另外一些选项在此,建议你经常阅读一下有关此工具的帮助文件,地址是https://ffmpeg.org/ffmpeg.html。

。你也有自己最喜欢的命令行文件转换工具吗?希望您也能与我们一起分享吧。

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

作者: 3182235786a

为您推荐

CentOS系统升级内核版本教程,centos内核版本升级

CentOS系统升级内核版本教程,centos内核版本升级

CentOS 系统升级系统内核版本  1、显示CentOS 系统内核版本:             [root@demo...
Linux下对 Nginx SSL 的性能进行调整

Linux下对 Nginx SSL 的性能进行调整

初始化服务器   这个web服务器运行在一个EC2 t1.micro 环境.我选择 Nginx + PHP5-FPM 来...
Linux Shell经典实例解析:Oracle启动脚本

Linux Shell经典实例解析:Oracle启动脚本

Oracle的启动脚本从功能上讲主要分为两个部分,第一部分是初始化各种环境变量,以确认当前Oracle服务器的版本,从而...
centOS6.4 64位下安装nfs文件共享系统

centOS6.4 64位下安装nfs文件共享系统

不知道谁装的服务器,默认自带,以下内容摘自互联网,配置部分按教程执行成功 一、环境介绍:   服务器:centos 19...
Linux下的Samba安装配置

Linux下的Samba安装配置

1 Samba 简介 Samba(SMB是其缩写) 是一个网络服务器,用于Linux和Windows共享文件之用;Sam...

发表回复

返回顶部