Как тянуть только новые файлы с помощью «adb pull»? (Утилита SDK Android) -- adb пол android Связанный проблема

How to pull only newer files with “adb pull”? (Android SDK utility)


13
vote

проблема

русский

С помощью команды «ADB Pull / SDCard /» Я могу скопировать все содержимое внутренней памяти моего телефона Android в мой текущий локальный каталог (и «ADB Pult / MNT / Extsdcard /» делает то же самое с внешним SD карта). Но эта команда всегда копирует все, даже файлы, которые я уже сохранил локально.

Есть ли способ скопировать только новые и модифицированные файлы? (Файлы с более новой датой)

Английский оригинал

With the command "adb pull /sdcard/" I can copy all the contents of the internal memory of my Android phone into my current local directory (and "adb pull /mnt/extSdCard/" does the same with the external SD card). But that command always copies everything, even files I already have stored locally.

Is there any way to copy only new and modified files? (files with a newer date)

  

Список ответов

9
 
vote
vote
Лучший ответ
 

Как описано SS-3-1415926535897932384626432, нет никакого флага, но сначала вы должны получить список файлов, а затем проверьте, соответствуют ли ваши локальные файлы. Я написал немного скрипта для него:

 <код> #!/bin/sh  rfolder=/sdcard/DCIM/Camera lfolder=Camera  adb shell ls "$rfolder" > android.files  ls -1 "$lfolder" > local.files  rm -f update.files touch update.files  while IFS=  read -r q; do   # Remove non-printable characters (are not visible on console)   l=$(echo ${q} | sed 's/[^[:print:]]//')   # Populate files to update   if ! grep -q "$l" local.files; then              echo "$l" >> update.files   fi   done < android.files  script_dir=$(pwd) cd $lfolder  while IFS=  read -r q; do   # Remove non-printable characters (are not visible on console)   l=$(echo ${q} | sed 's/[^[:print:]]//')   echo "Get file: $l"   adb pull "$rfolder/$l" done < "${script_dir}"/update.files   

Отрегулируйте удаленную папку <код> rfolder и локальная папка <код> lfolder на местоположение вашего собственного выбора.

 

As described by ss-3-1415926535897932384626433 there is no flag, but you have to get a list of files first and then check if your local files match. I wrote a little script for it:

#!/bin/sh  rfolder=/sdcard/DCIM/Camera lfolder=Camera  adb shell ls "$rfolder" > android.files  ls -1 "$lfolder" > local.files  rm -f update.files touch update.files  while IFS=  read -r q; do   # Remove non-printable characters (are not visible on console)   l=$(echo ${q} | sed 's/[^[:print:]]//')   # Populate files to update   if ! grep -q "$l" local.files; then              echo "$l" >> update.files   fi   done < android.files  script_dir=$(pwd) cd $lfolder  while IFS=  read -r q; do   # Remove non-printable characters (are not visible on console)   l=$(echo ${q} | sed 's/[^[:print:]]//')   echo "Get file: $l"   adb pull "$rfolder/$l" done < "${script_dir}"/update.files 

Adjust the remote folder rfolder and the local folder lfolder to locations of your own choice.

 
 
     
     
7
 
vote

ADB-Sync - маленький, но мощный скрипт Python, который может сделать все ваши спросимые и другие ... https://github.com/google/adb-sync

 

adb-sync - small, yet powerfull python script that can do all your asked and more... https://github.com/google/adb-sync

 
 
   
   
4
 
vote

<Код> adb pull не предоставляет флагу Выбранные файлы .

Как обходной путь, вы можете сделать это: использовать <код> adb shell [Unix shell command] , чтобы скопировать выбранные файлы на временное место, а затем потяните все файлы из этого местоположения.

<Сильное> Обновление:
Вы можете использовать cp -u [source] [destination] Команда Shell Unix, чтобы скопировать только модифицированные файлы на последующем запуске. Вы также можете использовать <код> -r flag, чтобы использовать его на рекурсивных подкаталах, если это требуется.

 

adb pull doesn't seem to provide a flag to pull selected files.

As a workaround, you can do this: Use adb shell [Unix shell command] to copy selected files to a temporary location and then pull all files from that location.

Update:
You can use cp -u [source] [destination] unix shell command to copy only modified files on subsequent run. You can also use -r flag to use it on subdirectories recursive, if its required.

 
 
       
       

Связанный проблема

7  Как изменить «Предпочитаемый сетевой режим», используя ADB без перезагрузки?  ( How to change preferred network mode using adb without reboot ) 
Я пытаюсь изменить свой телефон (CM 12, на складе 4.2, как укоренившись) Предпочтительный режим сети из «GSM / WCDMA» (0), чтобы «WCDMA только» (2) и наоборот...

1  Я вспыхнул восстановления с Odin, почему мой телефон не ботится наклон?  ( I flashed recoveries with odin why doesnt my phone boot bow ) 
Samsung S3 Android-телефон, не укоренившись, сток-прошивка. в хронологическом порядке: Я включил USB отладку, хотя не мог использовать Fastboot. Я использов...

3  Проблема с ADB на моем Nexus 4 (неавторизованный телефон)  ( Problem with adb on my nexus 4 unauthorized phone ) 
При запуске устройств ADB в CMD он говорит, что мой телефон неавторизован. Похоже, что это есть что связано с подсказок RSA отпечатков пальцев. Я не помню, ка...

1  Xiaomi M8se Fastboot Loop при попытке установить TWRP  ( Xiaomi m8se fastboot loop when trying to install twrp ) 
При попытке установить TWRP (последняя версия для Xiaomi Mi 8SE) мне удается установить новейшие TWRP с помощью ADB (Fastboot Flash Recovery »C: Program File...

3  Может «ADB Remount» будет использоваться на стоковом телефоне (нерешено)?  ( Can adb remount be used on a stock phone unrooted ) 
Можно ли использовать <код> adb remount со стандартной прошивкой и без укоренения устройства? Если нет, есть ли другой способ заставить систему сделать / сис...

0  Принуждение планшета Android подключиться к Wi-Fi от ПК  ( Forcing an android tablet to connect to a wifi from pc ) 
Некоторое время назад у меня была планшет (Coby Kyros Mid9742), который положил полки, когда на экране выходит (половина области сенсорного экрана не распозна...

49  Для меня есть способ запустить adb shell как root, не печатая в "SU"?  ( Is there a way for me to run adb shell as root without typing in su ) 
Есть ли способ для меня запустить adb shell как root, не набрав <код> su ? Я хочу иметь возможность иметь root-доступ, не переходя в оболочку. ...

13  Как тянуть только новые файлы с помощью «adb pull»? (Утилита SDK Android)  ( How to pull only newer files with adb pull android sdk utility ) 
С помощью команды «ADB Pull / SDCard /» Я могу скопировать все содержимое внутренней памяти моего телефона Android в мой текущий локальный каталог (и «ADB Pul...

0  Boot-Looping на Amazon 4k Fire TV Stick  ( Boot looping on amazon 4k fire tv stick ) 
У меня проблемы с моим огненным телевидением Amazon 4K. Вчера я должен был сообразить свой пульт в другую палку в нашем доме (потому что кто-то забыл свой о...

3  Команда Shell adb, которая может тестировать коды MLS / SPC? [закрыто]  ( Adb shell command that can test mls spc codes ) 
<в сторону CLASS = "S-NEWACTS S-WELTIVE__info JS-Post-New Imide MB16« Роль = «Статус»> <Путь d = "M15 6.38A6.48 6.48 0 007.78. 04H-.02A6.49 6.49 0 002.05 ...