Windows Microsoft Word命令行实用程序

Windows Microsoft Word命令行实用程序,windows,ms-word,Windows,Ms Word,我有一个MS Word文档,其路径在环境变量中设置 如何从命令行实用程序打开该文档 "C:\Program Files\Microsoft Office\Office\Winword.exe" E:\hello.docx 我有上面的命令来打开文档。但是在上面的命令中,我硬编码了文档的名称和路径 我只想使用一个环境变量来提供文档的名称和路径。如果您愿意使用Powershell而不是命令提示符,只需几个设置步骤即可完成 首先,为word文档创建环境变量。如果您已经在其他地方这样做了,请跳过此步骤。

我有一个MS Word文档,其路径在环境变量中设置

如何从命令行实用程序打开该文档

"C:\Program Files\Microsoft Office\Office\Winword.exe" E:\hello.docx
我有上面的命令来打开文档。但是在上面的命令中,我硬编码了文档的名称和路径


我只想使用一个环境变量来提供文档的名称和路径。

如果您愿意使用Powershell而不是命令提示符,只需几个设置步骤即可完成

首先,为word文档创建环境变量。如果您已经在其他地方这样做了,请跳过此步骤。请注意,用双引号括起来的字符串将解析变量,因此在本例中,
$env:username
将解析为当前Windows用户。如果愿意,您也可以硬编码,但这有助于概括示例

$env:WordDoc = "C:\Users\$env:username\Documents\myDocument.docx"
接下来,您需要将Office的目录添加到path变量中。您可以搜索winword.exe以查找位置,但它可能是以下两种情况之一:

  • C:\Program Files\Microsoft Office\Office14
  • C:\ProgramFiles(x86)\Microsoft Office\Office14
您只需将该路径附加到环境变量,如下所示:

$env:Path += ";C:\Program Files\Microsoft Office\Office14"
无论如何,一旦设置好,您就可以使用powershell中的
winword
打开word文档。下面是一个简单的例子:

winword $env:WordDoc
关于以这种方式更改环境变量的简要说明——它们位于流程级别。这意味着,当您关闭powershell会话时,这些更改将消失。您可以将它们保存到powershell脚本并在控制台中运行,而不是在每个新会话中键入它们。下面是一个在我的机器上运行的快速脚本:

param
(
    [string]$FilePath
    [string]$wordDir = "C:\Program Files (x86)\Microsoft Office\Office14"
)

$env:WordDoc = $FilePath
If(!($env:Path | Select-String -SimpleMatch $wordDir))
{
    $env:Path += ";$wordDir"
}
winword $env:WordDoc

在命令提示符下执行此操作将涉及类似的过程——您仍然需要设置PATH环境变量以识别Microsoft Office。提供了一些有关如何执行此操作的见解。

如果您指的是批处理文件,并且MS Word与您系统上的
.doc
.docx
文件扩展名正确关联,则非常简单

将以下内容放入批处理文件(例如,C:\Temp\StartHello.bat)。我使用
DocVar
作为文档的路径和文件名;用环境变量的名称替换它

set DocVar="E:\Hello.docx"
%DocVar%
运行它

C:\Temp>StartHello
如果已经设置了环境变量,只需从分配它的批处理文件中删除第一行即可。这只剩下一行:

%DocVar%
如果您的意思是“直接从命令行”,则可以跳过批处理文件部分:

C:\Temp>%DocVar%