Wykonywanie programów linux (WSL) ze środowiska Windows

3

Zainstalowałem gitwewnątrz WSL, a kiedy wywołam program, wyświetla jeden komunikat o błędzie:

tłumaczenie: nie jest prawidłową aplikacją Win32

Moją intencją jest zastąpienie narzędzi takich jak cygwin , Git dla Windows i innych narzędziami zainstalowanymi wewnątrz WSL.

tłumaczenie: nie można / nie można wykonać pliku binarnego

gzinho
źródło
2
Nie próbowałbym uruchamiać programów Linux z WSL wewnątrz programu Windows; do pracy z narzędziami Windows będziesz potrzebować aplikacji Win32, a nie aplikacji WSL. Jest jednak Git dla Windows i wiem, że działa.
Thomas Ward
Uwaga dla modów / recenzentów: że migrowałem to z Ask Ubuntu, ponieważ pyta „Jak mogę użyć programu WSL z rodzimego programu Windows”, co byłoby nietypowe w Ask Ubuntu, ponieważ zada pytanie Windows zamiast Linuksa pytanie.
Thomas Ward
czy możesz zawinąć go do *.shpliku i wywołać ten skrypt w swoim programie?
Phuclv
git działa „w porządku” pod WSL .. „dobrze” mam na myśli wolniejszy niż brud .. ale działa w 100%
Señor CMasMas

Odpowiedzi:

6

Nie masz dostępu do plików i narzędzi Linuksa bezpośrednio z aplikacji Windows . Zatem podanie ścieżki bezpośrednio nie jest dobrą rzeczą.

Powinieneś zadzwonić do niego jako bash -c "git", lub w razie potrzeby, umieścić połączenie w pliku wsadowym, aby aplikacja Windows zadzwoniła do tego pliku zamiast aplikacji Linux.

Musisz także przetłumaczyć ścieżkę między Windows i Linux, ponieważ git w WSL nie zrozumie takich rzeczy D:\my project\src. Wcześniej konwersję należy wykonać ręcznie, jednak MS uwzględnił wslpathod tego czasu system Windows 10 1803.

Możesz także zainstalować dodatek, który wykona dla Ciebie wszystkie tłumaczenia i podnoszenie ciężarów. W VSCode jest wslgit i JetBrains ma WSL Support Framework . Nie jestem pewien co do Android Studio, ale ta odpowiedź sugeruje, że można użyć gitwrap

Przeczytaj więcej Interop między Windows a Bash

Phuclv
źródło
Hrrrmmm .. Robię to CAŁY CZAS. To, czego nie chcesz edytować, to pliki w wirtualnych ścieżkach AREN'T pod / mnt / *. Możesz uruchomić komendę windows, potok do komendy linux i przesłać ją z powrotem do komendy windows. Używam linux netbeans pod oknami i edytuję pliki z obu stron. To, co może stać się mylące, to włączenie czułości przypadku bez wiedzy o tym.
Señor CMasMas