Выйдите из команды, не дожидаясь окончания - PullRequest
0 голосов
/ 06 января 2020

Я пытаюсь экспортировать файлы SparkAR с помощью SparkAR CLI, однако после успешного экспорта файлов скриптом он не выходит из процесса, например:

sparkTerminalBinaryWindows.exe export .\Project.arproj -d .\exportDestination

Когда я запускаю эту команду, она выдает:

Starting to export project file at path: ".\Project.arproj"...
Successfully exported project file at path ".\Project.arproj" to path ".\exportDestination\Project.arexport".

Однако после этого процесса вывода не завершается, поэтому, если я запускаю что-то вроде этого

sparkTerminalBinaryWindows.exe export .\Project.arproj -d .\exportDestination && echo "Second command"

вторая команда echo "Second command" никогда не запускается

Что можно сделать, это

  1. Прослушайте вывод первой команды, и когда я увижу ключевое слово "Успешно", выйдите из команды

  2. Процесс занимает максимум 10 секунд до завершения sh, так что, возможно, я может дать тайм-аут первой команде, и в конечном итоге он выйдет с таймаутом через 10 секунд

Однако у меня нет опыта работы с Windows терминалом или PowerShell. Я пытался найти решение, но ничего не смог найти.

Как я могу решить эту проблему?

1 Ответ

0 голосов
/ 06 января 2020

Передайте его туда, где-объект, а затем выберите -объект -first. Выбор убьет трубу.

& { while (1) { sleep 5; 'successfully' } } | 
  where { $_ -match 'successfully' } | select -first 1

successfully
...