2013-08-10 4 views
3

내가 안드로이드 장치에서 내 PC에 어떤 파일을 복사하는 스크립트의 조각을 썼다에 파일의 일괄 복사 :, 내가 놓친 무언가가있다 그러나안드로이드에서 PC

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

보인다; 작동하지 않습니다. 지적 해 주시겠습니까?

내가 가지고 : 예상대로

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

답변

3

오류가 발생하는 이유는 $line 끝에 여분의 \r 문자가 있기 때문입니다. 그래야 작동합니다 :

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

가 작동합니다. 쉘이 glob을 해석하지 않도록하려면 \에 유의하십시오.

+0

같은 오류가 계속 발생합니다! – JackWM