Existe um comando adb semelhante a "localizar" ou "grep" que me ajudaria a encontrar um arquivo no meu dispositivo Android?
Estou curioso sobre o adb especificamente, não sobre um aplicativo de pesquisa.
EDIT: "find" foi sugerido, mas no meu dispositivo ICS:
hydrangea@turnsole:~$ adb shell find / -name *maps*
/system/bin/sh: find: not found
No meu dispositivo Gingerbread, ele funciona. (Exceto que eu não enraizei esse dispositivo, por isso ele não tem permissão.)
hydrangea@turnsole:~$ adb shell find / -name *maps*
find: permission denied
grep
mas nãolocate
(AFAIK).Respostas:
O comando find funciona bem no shell adb. A sintaxe é
find /path -name file_name
. Para pesquisar áreas somente leitura, você precisará de raiz. Se o comando find não estiver disponível no seu dispositivo em particular, pode ser necessário instalar o BusyBox (pesquise no Market.)Por exemplo,
adb shell find / -name *maps*
encontrará todos os arquivos que contêm a palavra "mapas" em todo o sistema de arquivos.
fonte
/somedir/: Permission denied
acrescente2>/dev/null
-o ao comando para silenciar as mensagens de erro.find
->/system/bin/sh: find: not found
- sem sorte. Como instalofind
em um dispositivo com bork que o fabricante decidiu não incluirfind
no firmware?find
utilitário vem com o BusyBox ou outras 3ª partes.Para usar os recursos nativos, tente (
ls -R
no android,grep
no PC):fonte
"find" é um aplicativo de linha de comando que normalmente pode ser instalado como: 1. um executável binário (a maioria das máquinas de mesa) ou 2. algo pequeno fazendo muitas coisas em que um deles é "find" ou 3. pode não estar disponível como telefone os fabricantes não gostam que os usuários tenham muito controle sobre seus telefones
Provavelmente você possui um dispositivo ICS da marca (ex. Samsung) - os fabricantes desejam ter mais controle sobre o dispositivo do que o proprietário. Ganhe raiz lá e instale o busybox. O dispositivo provavelmente é algo chamado "/ system / bin / toolbox" - você pode executar "/ system / bin / toolbox find", mas é provável que não retorne "nenhuma ferramenta desse tipo", pois o fabricante o removeu intencionalmente do dispositivo.
No entanto, é possível que seu dispositivo tenha o recurso dentro de sua caixa de ferramentas - mas apenas não "vinculado" ... se "/ system / bin / toolbox find" executasse o recurso, você poderia usar "ln / system / bin / find caixa de ferramentas "(eu poderia ter mexido na ordem dos parâmetros). Antes de executar "ln ...", você deve remontar o dispositivo no modo de leitura e gravação (usando "adb root" ou "su; mount -o remount, rw / system"
fonte