Можно ли передавать переменные из скрипта BASH в PWSH в Linux - PullRequest
0 голосов
/ 07 декабря 2018

У нас есть проект, в котором мы хотим запустить несколько сценариев Bash & Powershell для Linux.Мы будем использовать скрипт BASH для запуска некоторых процессов с различными переменными, выполнения скрипта powershell и затем выполнения еще нескольких команд BASH.

Если в скрипте bash установлены переменные, а затем мы выполняем скрипт powershell вв том же сеансе BASH, есть ли способ передать эти переменные в Powershell?

Ответы [ 2 ]

0 голосов
/ 25 июня 2019

Если вы экспортируете переменную bash, она будет доступна в powershell как $ env: variablename:

example=/var/data
export example
pwsh -noprofile -command '$env:example;'

возвращает / var / data

В Powershell вы можете запустить Get-ChildItem Env: для отображения всех переменных среды.

0 голосов
/ 07 декабря 2018

Вы можете передавать значения через переменные окружения , что упрощает Bash (и POSIX-совместимые оболочки в целом):

$ foo='BAR'; bar='BAZ' # define sample Bash shell vars.
$ foo="$foo" bar="$bar" pwsh -noprofile -command '$env:foo; $env:bar'
BAR
BAZ

Обратите внимание, как предваряются foo="$foo" и bar="$bar"определены shell переменные $foo и $bar как переменные среды процесса для вызова pwsh.
То есть эти переменные среды действуют только дляpwsh дочерний процесс.

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