Search code examples
androidadb

adb pull multiple files


What is the best way to pull multiple files using

adb pull

I have on my /sdcard/ 25 files with following name:

gps1.trace
gps2.trace
...
gps25.trace

Wildcard does not work:

adb pull /sdcard/gps*.trace .

Solution

  • You can use xargs and the result of the adb shell ls command which accepts wildcards. This allows you to copy multiple files. Annoyingly the output of the adb shell ls command includes line-feed control characters that you can remove using tr -d '\r'.

    Examples:

    # Using a relative path
    adb shell 'ls sdcard/gps*.trace' | tr -d '\r' | xargs -n1 adb pull
    # Using an absolute path 
    adb shell 'ls /sdcard/*.txt' | tr -d '\r' | sed -e 's/^\///' | xargs -n1 adb pull