Jestem nowym użytkownikiem systemu Windows. Zainstalowałem pliki adb i fastboot (narzędzia platformowe) dla systemu Windows i dodano folder w zmiennej ścieżki abym mógł uzyskać dostęp do adb uniwersalnie.
Zrobiłem kilka badań i odkryłem, że Windows powoli przesuwa się do PowerShell (co jest dobre) iw końcu (chyba) pominie starsze CMD. Więc nawet Menu [Shift + prawy przycisk myszy] pokazuje opcję „Otwórz okno PowerShell”. Przeczytałem kilka artykułów i zapoznałem się z hackami rejestru, aby dodać „Open Command Prompt Here” i usunąć „Open PowerShell tutaj”, ale to nie jest coś, co chciałbym zrobić, biorąc pod uwagę, że PowerShell jest znacznie bardziej zaawansowany niż CMD.
Teraz, kiedy otwieram PowerShell w tym samym folderze, w którym zainstalowałem narzędzia platformowe i uruchamiam polecenie adb, otrzymuję to i to się udaje .
.\adb devices
.\adb.exe devices
Ale kiedy otwieram PowerShell gdzie indziej i uruchamiam polecenie, jest to nieudany . Dlaczego tak się dzieje, nawet gdy dodałem folder adb do zmiennej ścieżki? A jak mogę z powodzeniem uruchomić komendę?
Podczas wyszukiwania znalazłem aplikację, która zapewnia PowerShell ADB i Fastboot GUI - PoshADB (chciałem się podzielić).
Proszę zanotować że adb devices
działa dobrze w cmd, powszechnie.
-
Wniosek, który wyciągnąłem z odpowiedzi poniżej:
Gdy pliki adb NIE są na moim
PATH
Działają one w tym samym folderze, w którym zainstalowano adb:
- Zadzwoń po pełnej ścieżce
.\adb devices
.\adb.exe devices
- Zadzwoń po pełnej ścieżce
Działa to powszechnie:
- Zadzwoń po pełnej ścieżce
Gdy pliki adb są na moim
PATH
Działają one w tym samym folderze, w którym zainstalowano adb:
- Zadzwoń po pełnej ścieżce
.\adb devices
.\adb.exe devices
adb devices
- Zadzwoń po pełnej ścieżce
Działają one powszechnie:
adb devices
- Zadzwoń po pełnej ścieżce
Dla mojego przyszłego odniesienia- (Zwięzłe: jeśli nie jest na twoim PATH
następnie musisz wprowadzić pełną ścieżkę, aby mogła działać. A jeśli jest na twoim PATH
wtedy możesz po prostu wpisać adb devices
lub wspomnij pełną ścieżkę adb)
źródło
[...] registry-hacks to add 'Open Command Prompt Here' and remove 'Open PowerShell Window here'
nie są konieczne. Przejdź do nowego panelu Ustawienia - & gt; Personalizacja - & gt; Pasek zadań - & gt; odznacz „Zamień wiersz polecenia przy pomocy Windows PowerShell [...]”.adb.exe devices
działa dobrze w tym samym folderze, w którym znajdują się narzędzia platformy. Ale ponieważ dodałem ten folder do zmiennej ścieżki (może to również potwierdzić, używając$Env:Path
), to samo polecenieadb.exe devices
działa powszechnie także. To bardzo dobrze odpowiada na moje pytanie. Dziękuję Ci! Nie jestem jednak w stanie zrozumieć ” „dot sourcing” jest używany w bieżącym katalogu aby zapobiec niepożądanemu wykonaniu ". Tak, mogę również potwierdzić, że w tym samym folderze,.\adb.exe devices
i.\adb devices
działa, ale nie powszechnie.Go to the new Settings panel -> Personalization -> Taskbar -> uncheck "Replace Command Prompt with Windows PowerShell [...]"
, zastępuje je tylko po kliknięciu prawym przyciskiem myszy przycisku Start lub naciśnięciu klawisza Windows + X . W moim oryginalnym poście mówię o menu kontekstowe W każdym razie, dzięki za komentarz! :)Odpowiedzi:
Kiedy używasz
.\
aby uruchomić polecenie, mówisz PowerShellowi, aby spojrzał tylko w bieżącym katalogu - kropka oznacza „ten folder”, tak jak w starym procesorze poleceń. Jeśli rzecz, którą próbujesz uruchomić, nie znajduje się w bieżącym folderze, nawet jeśli znajduje się w folderzePATH
to się nie powiedzie. Zwróć uwagę, że termin „dot-sourcing” odnosi się do wykonywania skryptów PowerShell w bieżącym zakresie, a nie do własnego, co różni się od uruchamiania polecenia z bieżącego katalogu.Możesz wpisać nazwę programu bez
.\
gdziekolwiek go uruchomić, jeśli jest na twoimPATH
. Zauważ jednak, że PowerShell nie zobaczy zmian wPATH
lub dowolna zmienna środowiskowa do momentu ponownego uruchomienia. Po dostosowaniu zmiennej środowiskowej i otwarciu nowego PowerShell po prostuadb
wystarczy, aby zidentyfikować program, który chcesz uruchomić, bez względu na bieżący katalog.źródło
PATH
. Teraz jak uruchomić / wykonać / Lampa błyskowa plik, którego nie ma w tym samym folderze. Jak ja nawigować do tego pliku z folderu adb?cd
aby zmienić bieżący katalog (podobnie jak w starym procesorze poleceń), lub możesz wprowadzić względny (np.subfolder\program.ext
) lub pełna ścieżka (np.C:\somefolder\subfolder\program.ext
) aby uruchomić program, który znajduje się gdzie indziej niż bieżący katalog.