JackWM
JackWM

Reputation: 10535

Copy a batch of files from Android to PC

I wrote a piece of script to copy some files to my PC from an Android device:

adb shell ls /sdcard/Download/0*.log > tmp 
while read line
do  
    echo $line
    adb pull $line .
done < tmp 
rm tmp 

However, it seems there is something I missed; it does not work. Could you help me point it out?

I got:

/sdcard/Download/0810-192141.log
' does not existsdcard/Download/0810-192141.log

Upvotes: 4

Views: 602

Answers (2)

Alex P.
Alex P.

Reputation: 31666

The reason you're getting the error is the extra \r character on the end of the $line. This should work:

adb shell "ls /sdcard/Download/0*.log" | tr -d '\r' > tmp 
while read line
do  
    echo $line
    adb pull $line .
done < tmp 
rm tmp 

Upvotes: 4

Diego Torres Milano
Diego Torres Milano

Reputation: 69189

adb shell ls /sdcard/Download/0\*.log > tmp

will work as you expect. Note the \ to avoid the glob being interpreted by your shell.

Upvotes: 1

Related Questions