Как вызвать cmd пакет из скрипта powershell - PullRequest
2 голосов
/ 20 января 2012

У меня есть

C: \ folder \ tail.exe

C: \ logs \ logfile.log

C: \ script \ shellscript.ps1

Как мне запустить C: \ folder \ tail.exe из C: \ script \ shellscript.ps1

Мне нужно запустить "C: \ folder \ tailf.exe C: \ logs"\ logfile.log "из C: \ script \ shellscript.ps1, но не полагаясь на отдельный пакетный файл, мне нужно вызвать его напрямую.

Обычно я делаю: cd C: \ folder \ и затем tailf.exe C: \ logs \ logfile.log

Внутри C: \ script \ shellscript.ps1 Я пытался

start-process C:\fetchmail\tail.exe -argumentlist "C:\fetchmail\logs\fetchmail.log"

Я вижу, мигает окно, но не знаю, работает ли оно, окнодолжен оставаться открытым.

Ответы [ 2 ]

7 голосов
/ 20 января 2012

Вы можете делать то, что обычно делаете:

C:\folder\tail.exe c:\logs\logfile.log

Обратите внимание, что если в путях есть пробелы, вы должны сделать:

& "C:\fol der\tail.exe" "c:\log s\logfile.log"
3 голосов
/ 20 января 2012
  1. Чтобы выполнить tail.exe, запущенный в отдельном окне и , не закрыв окно сразу , попробуйте:

    cmd /k c:\folder\tail.exe c:\logs\test.log

  2. Чтобы запустить tail.exe в окне powershell, попробуйте:

    C:\folder\tail.exe c:\logs\logfile.log

  3. Предполагая, что tail.exe равен Хвост для Win32 , это эквивалент PowerShell вашей команды:

    get-content c:\logs\logfile.log | select -last 10

  4. В Расширения сообщества Powershell имеется командлет Get-FileTail , который является более эффективным эквивалентом собственного хвоста PowerShell.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...