Czy istnieje sposób uruchomienia polecenia Bash z CMD?

0

Chcę uruchomić polecenie w CMD, aby działało w Bash.

Na przykład open bash.exe "cd .."i to powinno otworzyć Bash, uruchomić cd... (Wiem, że mój przykład nie działa).

Wszelkie myśli i pomysły?

Gers Pardoel
źródło
czy to pomaga? stackoverflow.com/questions/17302977/…
InterLinked

Odpowiedzi:

1

Chcę uruchomić polecenie w CMD, aby działało w Bash.

Użyj wsl.exe:

Uruchom narzędzia Linux z wiersza polecenia systemu Windows

Uruchom pliki binarne systemu Linux z wiersza polecenia systemu Windows ( CMDlub PowerShell) przy użyciu wsl.exe <command>.

Pliki binarne wywoływane w ten sposób:

  • Użyj tego samego katalogu roboczego, co bieżący CMDlub PowerShellmonit.
  • Uruchom jako domyślny użytkownik WSL.
  • Mają takie same uprawnienia administracyjne w systemie Windows jak proces wywoływania i terminal.

Na przykład:

C:\temp> wsl ls -la
<- contents of C:\temp ->

Poniższe polecenia systemu Linux wsl.exesą obsługiwane jak każde polecenie uruchamiane w WSL. Takie rzeczy jak sudo, piping i przekierowywanie plików działają.

Uwaga:

Jeśli korzystasz z aktualizacji Creators Update lub Anniversary Update, przejdź do sekcji Creators / Anniversary Update .

Źródło interoperacyjności Windows z Linuksem | Dokumenty Microsoft

DavidPostill
źródło
Ale cdnadal nie będzie działać, ponieważ zmienia tylko katalog roboczy bieżącego procesu.
Ignacio Vazquez-Abrams
@ IgnacioVazquez-Abrams „Polecenia przekazane do wsl.exe są przekazywane do procesu WSL bez modyfikacji.”
DavidPostill
@ IgnacioVazquez-Abrams "bash.exe został uznany za przestarzały i zastąpiony przez wsl.exe."
DavidPostill
@ IgnacioVazquez-Abrams Możesz przekazać skrypt powłoki zawierający cd i inne polecenia ...
DavidPostill
Jasne, właśnie wskazywałam, że przykład użyty przez pytającego nie zadziała.
Ignacio Vazquez-Abrams