Если вы не можете использовать 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"
Во всяком случае, как только это будет установлено вы можете использовать winword
из powersh ell, чтобы открыть документы на слово. Вот простой пример:
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 предлагает некоторое представление о том, как это сделать.