у меня есть сценарий bash postCloneSetup.sh:
script_path=$( cd "$(dirname "${BASH_SOURCE[0]}")" ; pwd -P )
cd "$script_path"
printf 'Updating submodules for projectrn'
git submodule update --init --recursive
printf 'rnInitializing git hooksn'
./GitHooks-BackEnd/init-hooks
printf 'rnInitializing Submodule1rn'
$(./Submodule1/postCloneSetup.sh)
printf 'rnInitializing Submodule2rn'
$(./Submodule2/postCloneSetup.sh)
я запускаю сценарий bash из командной строки Windows.
postCloneSetup.sh
Он открывает другое окно, а затем возвращается. Окно, которое оно породило, остается открытым и записывает выходной текст.
Я хочу захватить вывод из порожденного окна (текст, записанный на консоль) и вернуть его в командную строку Windows.
Я предпочел бы использовать что-то вроде
$(postCloneSetup.sh) // Linux for capturing output to current context
для командной строки Windows.
Я предпочел бы не изменять postCloneSetup.sh. Я знаю, что мог бы записать его в файл с
exec &> postCloneSetupLog.log
но тогда я должен ждать и вручную запустить
type postCloneSetupLog.log
чтобы увидеть вывод в консоли. Это невозможно для интеграции в движок CI, что является моей целью.
как я могу захватить вывод с порожденной консоли в одной команде?