我需要在服务器上使用 gnumeric 的文件转换工具 ssconvert。
问题是 gnumeric 是一个 gnome 应用程序,如果没有安装桌面就无法安装。
ssconvert 也没有单独的包,我无法从源代码编译它...
我需要这个特定的转换工具,因为它可以将 Excel XML 格式转换为 CSV,而其他 Excel 转换工具无法做到这一点。
我正在使用 ubuntu 12.04 服务器。我很感激任何想法。
答案1
我认为 gnumeric 的许多依赖项实际上是“推荐”的包,而不是真正的依赖项。试试这个:
sudo apt-get install --no-install-recommends gnumeric
对我来说,这安装了大约 37MB 的软件包,其中大部分是库和图标主题,我觉得这是可以忍受的。
答案2
我知道您问的是 ssconvert,但就我而言,我放弃了安装不带 Gnome 依赖项的 gnumeric 的尝试。相反,我使用 xls2csv(它是 catdoc 包的一部分),结果相同。
假设您有一个 source.xls 文件。此命令:
xls2csv -s 8859-1 -d 8859-1 source.xls > destination.csv
就可以了。参数 -sy -d 指定源和目标字符集。此示例将处理包含特殊字符(例如“ñ”)的源文件。希望这对您有所帮助!
答案3
我刚刚在我的 Ubuntu 服务器上安装了 gnumerics:它安装了很多依赖项,例如 gnome 和其他依赖项,这看起来很重,但是您不需要加载桌面环境即可使用 ssconvert。
我的建议是:只需安装它,不要关心 gnome 和桌面。
答案4
进一步回答@IanPhillips 的问题:
sudo apt-get install --no-install-recommends gnumeric
我刚刚在干净的无头 Ubuntu 20.04 服务器虚拟机上尝试了此操作。apt
声称安装将占用 115MB;结果df
显示使用量增加了 151,492 个 1K 块。安装的软件包似乎不令人反感,但它相当重。但是,当前版本in2csv
(1.0.6) 相当没用,因此必须更换。请注意,简单/简单的in2csv
安装可能会占用 400MB 才能获得安装程序(apt install python3-pip
)。
以这种方式安装后,可以ssconvert
正确处理我的 xls 和 xlsx 测试文件,对时间格式的单元格进行了超过 3000 次测试转换。LibreOffice 在无头运行时也可以正确转换这些文件,但in2csv
在 xls 文件上会失败。
The following additional packages will be installed:
adwaita-icon-theme fontconfig fontconfig-config fonts-dejavu-core gnumeric-common gsfonts gtk-update-icon-cache hicolor-icon-theme humanity-icon-theme
libatk-bridge2.0-0 libatk1.0-0 libatk1.0-data libatspi2.0-0 libavahi-client3 libavahi-common-data libavahi-common3 libcairo-gobject2 libcairo2 libcolord2 libcups2
libdatrie1 libepoxy0 libfontconfig1 libgdk-pixbuf2.0-0 libgdk-pixbuf2.0-common libgoffice-0.10-10 libgoffice-0.10-10-common libgraphite2-3 libgsf-1-114
libgsf-1-common libgtk-3-0 libgtk-3-common libharfbuzz0b libjbig0 libjpeg-turbo8 libjpeg8 liblcms2-2 libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0
libpixman-1-0 librest-0.7-0 librsvg2-2 librsvg2-common libsoup-gnome2.4-1 libthai-data libthai0 libtiff5 libwayland-client0 libwayland-cursor0 libwayland-egl1
libwebp6 libxcb-render0 libxcb-shm0 libxcomposite1 libxcursor1 libxdamage1 libxfixes3 libxi6 libxinerama1 libxkbcommon0 libxrandr2 libxrender1 pxlib1 ubuntu-mono
Suggested packages:
gnumeric-plugins-extra fonts-liberation | ttf-mscorefonts-installer libgsf-1-dev colord cups-common gvfs liblcms2-utils librsvg2-bin
Recommended packages:
gnumeric-doc evince lp-solve at-spi2-core libgdk-pixbuf2.0-bin libgtk-3-bin
The following NEW packages will be installed:
adwaita-icon-theme fontconfig fontconfig-config fonts-dejavu-core gnumeric gnumeric-common gsfonts gtk-update-icon-cache hicolor-icon-theme humanity-icon-theme
libatk-bridge2.0-0 libatk1.0-0 libatk1.0-data libatspi2.0-0 libavahi-client3 libavahi-common-data libavahi-common3 libcairo-gobject2 libcairo2 libcolord2 libcups2
libdatrie1 libepoxy0 libfontconfig1 libgdk-pixbuf2.0-0 libgdk-pixbuf2.0-common libgoffice-0.10-10 libgoffice-0.10-10-common libgraphite2-3 libgsf-1-114
libgsf-1-common libgtk-3-0 libgtk-3-common libharfbuzz0b libjbig0 libjpeg-turbo8 libjpeg8 liblcms2-2 libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0
libpixman-1-0 librest-0.7-0 librsvg2-2 librsvg2-common libsoup-gnome2.4-1 libthai-data libthai0 libtiff5 libwayland-client0 libwayland-cursor0 libwayland-egl1
libwebp6 libxcb-render0 libxcb-shm0 libxcomposite1 libxcursor1 libxdamage1 libxfixes3 libxi6 libxinerama1 libxkbcommon0 libxrandr2 libxrender1 pxlib1 ubuntu-mono
0 upgraded, 66 newly installed, 0 to remove and 56 not upgraded.
Need to get 25.4 MB of archives.
After this operation, 115 MB of additional disk space will be used.
Do you want to continue? [Y/n] y