我有一个应用程序需要从命令行打印MS Word .docx文件。背景是这是在Snow Leopard服务器上,CUPS-PDF作为默认打印机。如果在查找器中单击一次.docx文件进行选择,然后从文件菜单中选择打印,它将打开MS Word (已安装2011)并将文件打印到后台(通过CUPS)。太棒了!现在,什么是与之相当的BASH命令?
我已经尝试过lpr,它似乎只适用于纯文本文件。我已经尝试打开它打开MS Word,但我没有看到“打印”选项打开。我尝试过通常的微软办公软件(OpenOffice和LibreOffice),它们都可以工作,但生成的布局与Word生成的布局相去甚远,这是可耻的不可接受的。我尝试使用osascript = AppleScript =,但效果不佳--它并不总是触发。
我的挑战是,我正在创建的.docx外部的word从一个PHP程序的模板,只需要将它转换为.docx,保留所有的格式。
发布于 2012-04-19 12:25:13
看看launch,可以在这里找到:http://sabi.net/nriley/software/,使用自制软件或macport也很容易安装。
它类似于open,但增加了一些额外的功能,包括
-p Ask application(s) to print document(s).发布于 2012-01-16 22:31:36
如果您安装了自动化操作"Convert Format of Word Document",则可以编写一个自动化工作流,然后尝试使用automator命令行工具(请参阅man automator)。
更多信息:
另一种选择可能是使用PDFwriter for Mac (托管在sourceforge上)或CUPS-PDF for Mac OS X (通过代码诗歌),然后使用命令行...
# cf. http://www.mac-forums.com/forums/os-x-apps-games/212770-how-print-files-preview-pdf-command-line.html
lpstat -v | awk '{ print $3; }'
lpr -P <printer name> /path/to/file发布于 2015-02-26 07:44:42
从问题中提取的OP的解决方案:
使用launch的
和使用下面的Ruby脚本的PDFwriter。
需要'rb- fsevent‘paths = '/private/var/hosts/toPDF’options ={:=> 5,:no_defer => true }fsevent= FSEvent.new fsevent.watch路径,选项做|目录|目录‘/private/var/hosts/toPDF/*.docx’。每个执行|f| puts 'processing '+f system( "launch -p "+f) end sleep 30 system("killall -u tj 'Microsoft Word'") system("killall -u tj 'Microsoft Error Reporting'") end fsevent.run
https://stackoverflow.com/questions/8879917
复制相似问题