Como puxar apenas arquivos mais novos com "adb puxar"? (Utilitário Android SDK) -- adb camp android Relacionado O problema

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


13
vote

problema

português

com o comando "adb pull / sdcard /" posso copiar todo o conteúdo da memória interna do meu telefone Android no meu diretório local atual (e "ADB Pull / MNT / Extsdcard /" faz o mesmo com o SD externo cartão). Mas esse comando sempre copia tudo, até mesmo arquivos que eu já armazenei localmente.

Existe alguma maneira de copiar apenas arquivos novos e modificados? (Arquivos com uma data mais recente)

english

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)

  

Lista de respostas

9
 
vote
vote
Melhor resposta
 

como descrito por ss-3-1415926535897932384626433 Não há uma bandeira, mas você precisa obter uma lista de arquivos primeiro e, em seguida, verificar se seus arquivos locais correspondem. Eu escrevi um pequeno script para ele:

  #!/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    

Ajuste a pasta remota rfolder e a pasta local lfolder para localizações de sua própria escolha.

 

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 - pequeno, mas poderoso script Python que pode fazer tudo o seu pedido e mais ... 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 não parece fornecer uma bandeira para puxar arquivos selecionados .

Como solução alternativa, você pode fazer isso: Use adb shell [Unix shell command] para copiar arquivos selecionados para um local temporário e, em seguida, puxe todos os arquivos desse local.

update:
Você pode usar ABCDEFGHIJKLMNABCDEFGHIJKLMN5 Comando Unix Shell para copiar apenas arquivos modificados na execução subseqüente. Você também pode usar -r flag para usá-lo em subdiretórios recursivos, se for necessário.

 

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.

 
 
       
       

Perguntas relacionadas

49  Existe uma maneira de executar o shell adb como raiz sem digitar em 'su'?  ( Is there a way for me to run adb shell as root without typing in su ) 
Existe uma maneira de executar o shell adb como root sem digitar su ? Eu quero ser capaz de ter acesso root sem entrar na concha. ...

13  Como puxar apenas arquivos mais novos com "adb puxar"? (Utilitário Android SDK)  ( How to pull only newer files with adb pull android sdk utility ) 
com o comando "adb pull / sdcard /" posso copiar todo o conteúdo da memória interna do meu telefone Android no meu diretório local atual (e "ADB Pull / MNT / ...

0  Boot-looping na Amazon 4K Fire Tv Stick  ( Boot looping on amazon 4k fire tv stick ) 
Estou tendo problemas com minha TV Amazônia 4K Fire. ontem, eu tive que parentar meu controle remoto para um pau diferente em nossa casa (porque alguém esqu...

1  Postei recuperações com Odin, por que minha bota do telefone não se curva?  ( I flashed recoveries with odin why doesnt my phone boot bow ) 
telefone Android Samsung S3, não enraizado, firmware de estoque. em ordem cronológica: Eu liguei a depuração USB, embora não pudesse usar fastboot. Eu usei ...

3  Problema com adb no meu Nexus 4 (telefone não autorizado)  ( Problem with adb on my nexus 4 unauthorized phone ) 
Ao executar dispositivos ADB em cmd, ele diz que meu telefone não é autorizado. Parece que tem algo a ver com o prompt de impressão digital RSA. Não me lembro...

3  ADB Shell Command que pode testar códigos MLS / SPC? [fechado]  ( Adb shell command that can test mls spc codes ) 
. Esta questão é improvável que ajude a futuros visitantes; Só é relevante para uma pequena área geográfica, um momento esp...

1  Xiaomi m8se fastboot loop ao tentar instalar o TWRP  ( Xiaomi m8se fastboot loop when trying to install twrp ) 
Ao tentar instalar o TWRP (versão mais recente para Xiaomi MI 8SE), consigo instalar o mais novo TWRP usando ADB (Fastboot Flash Recovery "C: Arquivos de Pro...

3  Pode "adb remonta" ser usado em um telefone de ações (desrotado)?  ( Can adb remount be used on a stock phone unrooted ) 
É possível usar adb remount com um firmware padrão e sem ter enraizado o dispositivo? Se não, existe outra maneira de forçar o sistema a fazer / sistema gra...

7  Como alterar o "modo de rede preferencial" usando ADB sem reinicialização?  ( How to change preferred network mode using adb without reboot ) 
Estou tentando mudar o meu telefone (CM 12, estoque 4.2, tanto enraizado) Modo de rede preferido de "GSM / WCDMA" (0) para "somente WCDMA" (2) e vice-versa (p...

0  Forçando um tablet Android a se conectar a um WiFi do PC  ( Forcing an android tablet to connect to a wifi from pc ) 
um tempo atrás, eu tinha um tablet (Coby Kyros Mid9742), que ficou arquivado quando a tela parou (metade da área da tela sensível ao toque não reconhecerá toq...




© 2022 pergunte.org All Rights Reserved. Casa de perguntas e respostas todos os direitos reservados


Licensed under cc by-sa 3.0 with attribution required.