我正在尝试使用adb pull命令将某些文件(jpg)复制到我的macbook。我试过“adb pull sdcard / mydir / * .jpg”,但它显然没有解释通配符。我怎样才能获得仅复制的jpg文件?如果有帮助的话我已经扎根了手机。
答案 0 :(得分:65)
您可以将文件移动到其他文件夹,然后拉出整个文件夹。
adb shell mkdir /sdcard/tmp adb shell mv /sdcard/mydir/*.jpg /sdcard/tmp # move your jpegs to temporary dir adb pull /sdcard/tmp/ # pull this directory (be sure to put '/' in the end) adb shell mv /sdcard/tmp/* /sdcard/mydir/ # move them back adb shell rmdir /sdcard/tmp # remove temporary directory
答案 1 :(得分:13)
pullFiles.sh
:#!/bin/bash
HOST_DIR=<pull-to>
DEVICE_DIR=/sdcard/<pull-from>
EXTENSION=".jpg"
for file in $(adb shell ls $DEVICE_DIR | grep $EXTENSION'$')
do
file=$(echo -e $file | tr -d "\r\n"); # EOL fix
adb pull $DEVICE_DIR/$file $HOST_DIR/$file;
done
使其可执行:chmod +x pullFiles.sh
运行它:./pullFiles.sh
答案 2 :(得分:0)
对于短脚本,以下内容在我的Linux主机上运行
#!/bin/bash
HOST_DIR=<pull-to>
DEVICE_DIR=/sdcard/<pull-from>
EXTENSION="\.jpg"
while read MYFILE ; do
adb pull "$DEVICE_DIR/$MYFILE" "$HOST_DIR/$MYFILE"
done < $(adb shell ls -1 "$DEVICE_DIR" | grep "$EXTENSION")
&#34; ls减去一个&#34;让我们&#34; ls&#34;每行显示一个文件,引号允许文件名中的空格。