ADB PULL TO DUMP FILES RECURSIVELY
###################################

THANKS TO: http://stackoverflow.com/questions/11074671/adb-pull-multiple-files

1 file or folder to current directory: # adb pull /sdcard/file
1 file or folder to another relative directory (linux): # adb pull /sdcard/folder somewhere/else/
1 file or folder to another absolute directory (linux): # adb pull /sdcard/folder /otherfolder/somewhere/else/
1 file or folder to another relative directory (windows): # adb pull /sdcard/folder otherfolder\else
1 file or folder to another absolute directory (windows): # adb pull /sdcard/folder C:\otherfolder\somewhere\else


NOTE: if folder dumps it recursively. If its a folder you dont need to end it with a "/" it will know.

TO DUMP FULL SDCARD
####################

cd /dumplocation
adb pull /sdcard/

LINUX:
# adb shell ls /sdcard/gps*.trace | tr '\r' ' ' | xargs -n1 adb pull 
or, on Windows (since the newline characters are different),

WINDOWS (NEED ACCESS TO CYGWIN COMMANDS LIKE "tr" AND "xargs"):
# adb shell ls /sdcard/gps*.trace | tr "\n\r" " " | xargs -n1 adb pull

NOTE: with windows, install cygwin, and then change your windows PATH system variable to add/include the cygwin bin folder. so that you run the command such as "xargs" and "tr" and "grep" from anywhere.

NOTE: You should also add to the windows path the adb command, so that it runs from any folder - I didnt do this, so I have to use adb by full path each and every time

DUMP FOLDER BY FOLDER TO CURRENT DIRECTORY - WINDOWS
#####################################################

from: cmd or conemu program

I like doing this better because if it fails, then the whole folder doesnt stop

TO CURRENT FOLDER:

# adb shell ls /sdcard/ | tr "\n\r" " " | xargs -n1 echo adb pull /sdcard/
NOTE: echo will add an extra space at the end, ignore it, it will not really be there.
Then when ready remove echo:
# adb shell ls /sdcard/ | tr "\n\r" " " | xargs -n1 adb pull /sdcard/

 

DUMP FOLDER BY FOLDER TO DIFFERENT DIRECTORY - WINDOWS (FULL PATH CALL TO ADB)
###############################################################################

from: cmd or conemu program

# cd c:\dumplocation\
# c:/location/of/adb shell ls /sdcard/ | tr "\n\r" " " | xargs -n1 echo c:/location/of/adb pull /sdcard/
Then when ready remove echo:
# c:/location/of/adb shell ls /sdcard/ | tr "\n\r" " " | xargs -n1 c:/location/of/adb pull /sdcard/


DUMP FOLDER BY FOLDER TO DIFFERENT DIRECTORY - WINDOWS (RELATIVE PATH CALL TO ADB)
###################################################################################

from: cmd or conemu program

Lets say im in the folder where adb is, so I can launch it with "adb", so I will make a folder called "dump" and go in there, the only way to call back on adb now is with full path, or relative path (its a folder back so i can use ..\adb)

mkdir dump
cd dump
..\adb shell ls /sdcard/ | tr "\n\r" " " | xargs -n1 echo ..\adb pull /sdcard/

 

DUMP FOLDER BY FOLDER TO CURRENT DIRECTORY - LINUX
#####################################################

...similar except forward slashes instead of \ and also change the "\n\r" to "\r"...

DUMP FOLDER BY FOLDER TO DIFFERENT DIRECTORY - LINUX (FULL PATH CALL TO ADB)
###############################################################################

...similar except forward slashes instead of \ and also change the "\n\r" to "\r"...


DUMP FOLDER BY FOLDER TO DIFFERENT DIRECTORY - LINUX (RELATIVE PATH CALL TO ADB)
###################################################################################

...similar except forward slashes instead of \ and also change the "\n\r" to "\r"...

 

Leave a Reply

Your email address will not be published. Required fields are marked *