【问题标题】:Microsoft Word Command line UtilityMicrosoft Word 命令行实用程序
【发布时间】:2013-09-02 00:55:55
【问题描述】:

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

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

"C:\Program Files\Microsoft Office\Office\Winword.exe" E:\hello.docx

我有上面的命令来打开一个文档。但是在上面的命令中,我已经硬编码了文档的名称和路径。

我要做的就是使用环境变量来提供文档的名称和路径。

【问题讨论】:

    标签: windows ms-word


    【解决方案1】:

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

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

    set DocVar="E:\Hello.docx"
    %DocVar%
    

    运行它

    C:\Temp>StartHello
    

    如果环境变量已经设置,只需从分配它的批处理文件中删除第一行。这给你留下了一行:

    %DocVar%
    

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

    C:\Temp>%DocVar%
    

    【讨论】:

      【解决方案2】:

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

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

      $env:WordDoc = "C:\Users\$env:username\Documents\myDocument.docx"
      

      接下来,您需要将 Office 的目录添加到您的路径变量中。您可以搜索 winword.exe 找到位置,但它可能是以下两个之一:

      • C:\Program Files\Microsoft Office\Office14
      • C:\Program Files (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。 This answer 提供了一些关于如何做到这一点的见解。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多