Android: plik ściągania adb na komputerze

92

Próbując skopiować plik z urządzenia na komputer, oto polecenie:

adb pull sdcard/log.txt Users/admin/Desktop

Ale to polecenie tworzy folder Users / admin / Desktop wewnątrz folderu narzędzi platformy, w którym znajduje się adb. Jak pobrać plik na mój pulpit?

Jim
źródło

Odpowiedzi:

99

Użyj w pełni kwalifikowanej ścieżki do pulpitu (np /home/mmurphy/Desktop.).

Przykład: adb pull sdcard/log.txt /home/mmurphy/Desktop

CommonsWare
źródło
wygląda na to, że Users / admin / Desktop to pełna ścieżka.
Jim
13
@Jim: Nie ma początku /, więc jest to ścieżka względna. W pełni kwalifikowana ścieżka w systemie OS X lub Linux zaczyna się od /; w pełni kwalifikowana ścieżka w systemie Windows zaczyna się od litery dysku lub udziału.
CommonsWare
Wiem, że to stary wątek, ale moje pytanie brzmi „czy możemy zrobić to samo programowo”. Zrobiłem coś takiego ProcessBuilder proc = new ProcessBuilder ("adb pull /storage/sdcard/s.txt C: / Users / 401896 / Desktop / adbPush.txt ”); Proces p = proc.start (); I to dla mnie wielki błąd
Sidharth Dash
1
@SidharthDash: Twój kod może działać na pulpicie. Jeśli spodziewasz się, że ten kod będzie działał na urządzeniu, bardzo się mylisz. Jeśli próbujesz napisać program Java na komputery stacjonarne, który automatyzuje adbpolecenia, zadaj nowe pytanie dotyczące przepełnienia stosu, w którym pokazujesz swój kod i błąd.
CommonsWare
@CommonsWare Odpowiadam w tym wątku, ponieważ nie mogę opublikować nowego pytania :(. Mówiąc o problemie, uruchamiam ten kod Java na komputerze i chcę skopiować plik z emulatora na komputer. Mam google i według najlepszych odpowiedzi nawet w SO używają kodu napisanego przeze mnie. PS kiedy używam prostego polecenia "ls", działa dobrze. Ale podczas kopiowania na PC jego błąd rzucania.
Sidharth Dash
45

Sądząc po lokalizacji folderu na pulpicie, którego używasz w systemie Windows. Polecenie w systemie Windows wyglądałoby tak:

adb pull /sdcard/log.txt %USERPROFILE%\Desktop\
Alex P.
źródło
1
w przypadku systemów Windows to z pewnością działa. jeśli spróbujemy adb pull /sdcard/*.txt% USERPROFILE% \ Desktop \, może to spowodować pobranie wszystkich plików txt obecnych na urządzeniu.
change_is_necessity
3
Musiałem użyć, w adb pull /sdcard/log.txt %USERPROFILE%\Desktop\log.txtprzeciwnym razie powiedziałem, że nie ma takiego pliku lub katalogu
gattsbr
1

W systemie Windows uruchom wiersz polecenia (cmd.exe) lub PowerShell (powershell.exe). Aby to zrobić szybko, otworzyć okno Uruchom polecenia, naciskając klawisz Windows + R . W oknie Uruchom polecenie wpisz „cmd.exe”, aby uruchomić wiersz polecenia; Jednak aby zamiast tego uruchomić PowerShell, wpisz „powershell”. Jeśli podłączasz swoje urządzenie z Androidem do komputera za pomocą kabla USB, będziesz musiał sprawdzić, czy Twoje urządzenie się komunikuje adb, wprowadzając poniższe polecenie:

# adb devices -l  

Następnie przeciągnij (skopiuj) plik z urządzenia z systemem Android do systemu Windows. Można to zrobić, wprowadzając następujące polecenie:

# adb pull /sdcard/log.txt %HOME%\Desktop\log.txt  

Opcjonalnie możesz zamiast tego wpisać to polecenie:

# adb pull /sdcard/log.txt C:\Users\admin\Desktop\log.txt 
David, twój przyjaciel
źródło
0

wykonaj adb pull \ sdcard \ log.txt C: Users \ admin \ Desktop

Kirtap Llahsram
źródło
5
To stare pytanie, na które już doczekaliśmy się odpowiedzi, a nawet zostało przyjęte - dodatkowo Twoja droga jest zła!
Léo Lam
4
Ale zapraszamy do przepełnienia stosu! Proszę trochę poszperać i przeczytać kilka wskazówek. Zawsze się cieszę, że nowe osoby dołączają do społeczności i wnoszą swój wkład.
funroll