Как запустить git - bash с некоторым аргументом в отдельном новом окне из Powershell - PullRequest
0 голосов
/ 07 августа 2020

Я пытаюсь выполнить следующие действия из Powershell. Ниже приведен псевдокод, объясняющий мои требования.

# This is a powershell function  
function load(){  
    cd C:\my_path\scripts
    invoke-expression -Command C:\Program Files\Git\git-bash.exe 
    # I want to go to this path into the git-bash.exe window
    cd C:\my_path\scripts 
    # I have bash script here. I want to excuete this script.   
    ./loadData.sh
}

как я могу добиться этого с помощью Powershell? Спасибо!

Ответы [ 2 ]

0 голосов
/ 07 августа 2020

Если вы просто хотите выполнить сценарий bash loadData.sh, запустите:

cd C:\my_path\scripts
path/to/bash.exe loadData.sh

Это создаст оболочку bash (в текущей консоли, а не в отдельной), запустите свой скрипт и выйдите, вернувшись в вашу оболочку powershell.

Если текущий рабочий каталог не установлен так, как вы ожидаете в вашей bash оболочке, вы, возможно, можете передать его в качестве аргумента в свой сценарий:

# not 100% tested, I don't have a Powershell at hand
path/to/bash.exe loadData.sh /c/my_path/scripts

# and in your loadData.sh, add an instruction :
cd "$1"
0 голосов
/ 07 августа 2020

попробуйте git-bash.exe --help посмотреть, какие у него параметры. после короткого поиска в Google я предполагаю, что вы можете запустить Start-Process -FilePath "C:\Program Files\Git\git-bash.exe" -ArgumentList '--cd="C:\my_path\scripts" --exec="loadData.sh"', возможно, даже Start-Process -FilePath "C:\Program Files\Git\git-bash.exe" -ArgumentList '--exec="C:\my_path\scripts\loadData.sh"' может сработать.

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