Para usar comandos de shell através de um programa de terminal, onde posso encontrar documentação ou ajuda ou páginas de manual para os comandos implementados no Android ?
Embora fosse bom tê-los no dispositivo via homem , PDF ou baseado na Web também ficariam bem.
Quando executo "man" no terminal, recebo um erro e não encontrei uma boa fonte online.
Respostas:
Você pode dar uma olhada em http://www.busybox.net/downloads/BusyBox.html para obter uma descrição do busybox e dos comandos fornecidos por ele. E confie em mim, se você vai trabalhar no console, provavelmente deseja usar o busybox.
fonte
busybox
, e usatoolbox
.A maioria dos comandos do terminal no android é a versão limitada dos comandos padrão do terminal Linux / Unix / POSIX, fornecidos pelo
toolbox
programa. Notavelmente ausente detoolbox
é ocp
comando (cópia de arquivo), você deve usarcat file1 > file2
. Se você passa muito tempo no shell, pode instalarbusybox
, o que fornece um conjunto mais rico de comandos POSIX padrão.Há um pouco sobre o shell do Android aqui: http://benno.id.au/blog/2007/11/13/android-under-the-hood
fonte
Desde que me deparei com o mesmo problema que você, comecei a compilar uma lista de comandos úteis no Android Shell, incluindo exemplos. Uma versão em alemão está no meu blog.
fonte
A maioria dos comandos shell "padrão" do Android é encontrada em / system / bin / e a maioria deles é vinculada ao Toolbox, um conjunto de applets bsd licenciado, semelhante ao busybox, mas sem os problemas "" de licenciamento GPL-2 "" . O Toolbox ajuda a necessidade do Google de remover a dependência do código GPL e é direcionado para tamanho pequeno e tarefas específicas do Android. Não era para ser usado pelo usuário final.
Não há manuais internos no estoque do Android, e os applets da caixa de ferramentas não possuem documentação, dos comandos, da própria caixa de ferramentas e online. São cópias muito limitadas do que a maioria dos usuários consideraria as ferramentas padrão do tipo POSIX. Como o BSD-Utils é mais parecido com o BSD-Utils, é mais provável que os sinalizadores do BSD Util funcionem e o comportamento é mais semelhante ao BSD-Utils do que ao Posix. Mesmo assim, os applets do Toolbox não possuem muitos desses sinalizadores.
A coisa mais próxima da documentação é o código fonte. Que, como a maioria do Android, está disponível online. Aqui está a versão do Froyo da fonte do Toolbox: https://android.googlesource.com/platform/system/core/+/froyo/toolbox
Basta encontrar a versão que você precisa.
Lembre-se de que diferentes fabricantes podem alterar o código. O Toolbox da Samsung é diferente do da Motorola. Caramba, o Samsung Galaxy S Toolbox difere do Samsung Sidekick 4g (baseado no Galaxy S). Os fabricantes podem adicionar miniaplicativos para uso próprio ou alterar o padrão para fins específicos. o
restart
applet na caixa de ferramentas funcionará no telefone em que foi ligado, mas orestart
applet do busybox não funcionará, a menos que seja especificamente corrigido.Time
eDate
também são diferentes. Há outros também. Portanto, o Toolbox não é algo que você pode substituir completamente pelo Busybox ou pelo GNU-Utils completo ou qualquer outra coisa.fonte
Nas versões mais antigas do Android
Nas versões mais antigas do Android, os comandos do shell tendem a ser:
Use
type
para informar onde um comando está armazenado els -l
no comando para informar se é um link binário ou simbólico real. Se for um link simbólico para a Caixa de ferramentas, você saberá que o comando faz parte da Caixa de ferramentas.Alguns comandos, como
kill
, estão disponíveis como um shell embutido (esta é a versão que normalmente será executada) e dentro/system/bin
(essa versão normalmente nunca será executada).type
dirá qual versão será executada.No Marshmallow e acima
Android 6.0 "Marshmallow" e acima do navio com Toybox , ea maioria dos comandos shell mais comumente utilizados (
cp
,mv
,ls
, et cetera) tendem a ser brinquedos Toybox. Os brinquedos da caixa de brinquedos normalmente incluem ajuda embutida; páginas do manual oficial não estão incluídas.Ainda assim, o Toybox não inclui tudo e, portanto, nem tudo é fornecido pelo Toybox. Por exemplo, mesmo no Android 6.0 "Marshmallow"
fsck_msdos
(que deve ser usado apenas para verificar cartões SD de 32 GB ou menos) parece ter sido retirado do FreeBSD ou do NetBSD.fsck_exfat
(que pode verificar a maioria dos cartões SD de 64 GB ou mais) é extraído de outro lugar. Não tenho certeza de onde.Sua concha
Nas versões modernas do Android, o shell é o shell
mksh
MirBSD Korn. Semksh
estiver em execução, para descobrir suamksh
versão, digite:fonte
Sugiro iniciar um dispositivo virtual Android (AVD), conectar-se a ele com adb e executar o comando do shell do Android em questão:
Se alguém souber que o sinalizador fornece comandos de shell do Android para imprimir apenas a tela de uso, entre em contato. Tentei --help, -help, -h, --usage, etc.
Tente executar
ls /system/bin
e consulte também http://developer.android.com/guide/developing/tools/adb.html#shellcommandsfonte
O conjunto de comandos do shell usados pelo Android parece ser
toolbox
. As informações sobre ele parecem não estar centralizadas (o que me parece obscuro ), mas é possível pesquisar e encontrar informações ao redor, por exemplohttp://www.all-things-android.com/content/android-toolbox-command-reference
Para uso "intensivo" da linha de comando, o BusyBox é geralmente recomendado como um substituto para
toolbox
.Créditos / relacionados:
/programming/3647014/how-can-i-get-information-from-the-shell-about-commands-available-in-android-she
/programming/41498651/how-to-execute-the-help-linux-command-on-android
https://github.com/jackpal/Android-Terminal-Emulator/wiki/Android-Shell-Command-Reference
fonte