从 linux 命令行检查有效的 docx
Posted
技术标签:
【中文标题】从 linux 命令行检查有效的 docx【英文标题】:check valid docx from linux command line 【发布时间】:2018-10-18 11:24:51 【问题描述】:我在 php 脚本中生成 docx 文件,但有时它们已损坏。服务器不知道这一点,它会将 docx 文件返回给用户,他发现它已损坏,造成非常糟糕的体验。
如果 docx 已损坏,是否有人有解决方案来检查 linux cli?所以我可以更有弹性,尝试修复它或对用户做出适当的回应。
现在我正在尝试:
libreoffice --headless --convert-to html corrupted.docx
但如果文件没有损坏,大多数情况下会增加响应时间。
你可以用this corrupted file调试
【问题讨论】:
我认为你可以编写 shell 脚本来检查文档是否损坏。 【参考方案1】:您可以调用一个 PHP 脚本来打开带有 PHPWord 的文档,它可以报告成功或失败。看到这个example:
include_once 'Sample_Header.php';
// Read contents
$name = basename(__FILE__, '.php');
$source = __DIR__ . "/resources/$name.docx";
echo date('H:i:s'), " Reading contents from `$source`", EOL;
$phpWord = \PhpOffice\PhpWord\IOFactory::load($source);
return $phpWord instanceof PhpOffice\PhpWord\PhpWord;
【讨论】:
以上是关于从 linux 命令行检查有效的 docx的主要内容,如果未能解决你的问题,请参考以下文章
入门:如何从Linux命令行直接执行MySQL/MariaDB查询
在 Linux 命令行上检查 postgresql jdbc 驱动程序版本的命令是啥?