是否可以在 UNIX 环境中运行 VBScript?
Posted
技术标签:
【中文标题】是否可以在 UNIX 环境中运行 VBScript?【英文标题】:Is it possible to run a VBScript in UNIX environment? 【发布时间】:2013-12-18 14:36:26 【问题描述】:我有一个用于将 excel 工作表合并到单个工作簿中的 Vbscript。我想知道我们是否可以在 unix 系统中执行 vbscript (.vbs) 文件。如果是,请帮助我处理程序。提前致谢。
【问题讨论】:
即使可以,也无法运行 Excel。 【参考方案1】:使用wine start /path/to/your/script/script.vbs
。
【讨论】:
【参考方案2】:您可以在您的 Windows 机器上安装 vbsedit,使用它来创建并从 vbscript 执行。然后您可以使用 Wine/PlayonLinux 运行可执行代码。
【讨论】:
【参考方案3】:不确定 Unices,但在 GNU/Linux 上 可以使用 Wine 运行 VBScript,但 VBScript 支持有限 .
在 Debian/Ubuntu 上,您可以按如下方式安装:
$ sudo apt-get install wine
...
$
从命令行运行:
$ wine cscript some-script.vbs
或
$ wine wscript some-script.vbs
例如,我可以使用来自 Ubuntu Wine PPA 的 Wine 1.7.19 运行以下脚本:
' test.vbs
'WScript.Echo "Echo test" ' doesn't work
'MsgBox "Message box!" ' look like doesn't work either
' Write to file - works
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.CreateTextFile("out.txt", True)
objFile.Write "Output to file test" & vbCrLf
objFile.Close
运行:
$ wine cscript test.vbs
fixme:vbscript:VBScript_SetScriptState unimplemented SCRIPTSTATE_INITIALIZED
fixme:scrrun:textstream_Close (0x13e208): stub
$ cat out.txt
Output to file test
$
【讨论】:
【参考方案4】:您的问题的简单答案是是的,我们可以在 UNIX 上运行 VBScript。但是您将无法在其上运行 excel。尽管即使您使用 WINE 让 Excel 运行,我也不知道它如何将 Excel 中的 COM 对象链接到 VBScript。
一种可能的替代方法是在 *NIX 框上安装 OpenOffice,然后配置 OpenOffice 以保存和创建 Excel 文档(但我对此不太确定)
【讨论】:
COM 对象在 Excel 中,而不是在 VBScript 中,我想看看您如何在 Unix 中运行 VBScript。 @AnsgarWiechers:- 刚刚更新了我的答案!有一个错字,是的,使用 WINE 可以使用它。虽然我同意不能直接在 UNIX 上运行它。(如果我遗漏了什么,请纠正我)以上是关于是否可以在 UNIX 环境中运行 VBScript?的主要内容,如果未能解决你的问题,请参考以下文章