Wo finde ich für die Verwendung von Shell-Befehlen über ein Terminalprogramm Dokumentation oder Hilfeseiten oder Manpages für die in Android implementierten Befehle ?
Es wäre zwar schön, sie per Mann auf dem Gerät zu haben , aber auch PDF oder webbasiert wären in Ordnung.
Wenn ich "man" vom Terminal aus starte, wird eine Fehlermeldung angezeigt und ich habe online keine gute Quelle gefunden.
Antworten:
Unter http://www.busybox.net/downloads/BusyBox.html finden Sie eine Beschreibung der Busybox und der von ihr bereitgestellten Befehle. Und vertrau mir, wenn du in der Konsole arbeiten willst, willst du wahrscheinlich die Busybox benutzen.
quelle
busybox
ist und stattdessen verwendettoolbox
.Bei den meisten Terminalbefehlen in Android handelt es sich um die eingeschränkte Version der Standard-Linux / Unix / POSIX-Terminalbefehle, die vom
toolbox
Programm bereitgestellt werden . Insbesondere fehlttoolbox
dercp
Befehl (Dateikopie), den Siecat file1 > file2
stattdessen verwenden müssen. Wenn Sie viel Zeit in der Shell verbringen, möchten Sie möglicherweise eine Installation durchführenbusybox
, die eine größere Anzahl von POSIX-Standardbefehlen enthält.Es gibt ein bisschen über Android Shell hier: http://benno.id.au/blog/2007/11/13/android-under-the-hood
quelle
Da ich über dasselbe Problem wie Sie gestolpert bin, habe ich begonnen, eine Liste nützlicher Befehle in der Android-Shell zusammenzustellen, einschließlich Beispielen. Eine deutsche Version ist auf meinem Blog.
quelle
Die Mehrheit der "Standard" -Befehle der Android-Shell befindet sich in / system / bin /, und die Mehrheit dieser Befehle ist mit Toolbox verknüpft, einem von bsd lizenzierten Appletsatz, ähnlich wie busybox, jedoch ohne die "" GPL-2-Lizenzierungsprobleme. . Die Toolbox hilft Google dabei, die Abhängigkeit von GPL-Code zu beseitigen. Sie ist auf kleine und spezifische Android-Aufgaben ausgerichtet. Es war nicht für den Endbenutzer gedacht.
Es gibt keine eingebauten Handbücher auf Lager Android, und Toolbox-Applets fehlen jegliche Dokumentation, von den Befehlen, aus der Toolbox selbst und online. Es handelt sich um sehr begrenzte Kopien dessen, was die meisten Benutzer als POSIX-Standardtools betrachten würden. Ähnlich wie bei den BSD-Utils, daher funktionieren BSD-Util-Flags mit größerer Wahrscheinlichkeit, und das Verhalten ist BSD-Utils ähnlicher als Posix. Selbst dann fehlen Toolbox-Applets viele dieser Flags.
Der Dokumentation am nächsten kommt der Quellcode. Welches, wie die meisten von Android, online verfügbar ist. Hier ist die Froyo-Version der Toolbox-Quelle: https://android.googlesource.com/platform/system/core/+/froyo/toolbox
Finden Sie einfach die Version, die Sie benötigen.
Beachten Sie, dass verschiedene Hersteller den Code möglicherweise ändern. Die Samsung Toolbox unterscheidet sich von der von Motorola. Heck, Samsung Galaxy S Toolbox unterscheidet sich von Samsung Sidekick 4g (Galaxy S basiert). Hersteller können Applets für den eigenen Gebrauch hinzufügen oder die Standardeinstellungen für bestimmte Zwecke ändern. Das
restart
Applet in der Toolbox funktioniert auf dem Telefon, auf dem es gestartet wurde, das Busybox-restart
Applet jedoch nicht, es sei denn, es wurde speziell gepatcht.Time
undDate
sind auch anders. Es gibt auch andere. Die Toolbox kann also nicht vollständig durch die Busybox oder die vollständigen GNU-Utils oder was auch immer ersetzt werden.quelle
Auf älteren Android-Versionen
In älteren Android-Versionen lauten die Shell-Befehle in der Regel entweder:
Verwenden
type
Sie diese Option , um anzuzeigen, wo ein Befehl gespeichert ist, und verwendenls -l
Sie diese Option, um anzuzeigen, ob es sich um eine echte binäre oder eine symbolische Verknüpfung handelt. Wenn es sich um einen symbolischen Link zur Toolbox handelt, wissen Sie, dass der Befehl Teil der Toolbox ist.Einige Befehle, wie z. B.
kill
, sind sowohl als eingebaute Shell (dies ist die normalerweise ausgeführte Version) als auch als Shell/system/bin
(diese Version wird normalerweise nie ausgeführt) verfügbar.type
wird Ihnen sagen, welche Version ausgeführt wird.Auf Marshmallow und höher
Android 6.0 „Marshmallow“ und auf Schiff mit Toybox , und die meisten der am häufigsten verwendeten Shell - Kommandos (
cp
,mv
,ls
, usw.) sind in der Regel Toybox Spielzeug sein. Toybox-Spielzeug enthält normalerweise eine eingebaute Hilfe. offizielle Handbuchseiten sind nicht enthalten.Trotzdem enthält Toybox nicht alles und daher wird nicht alles von Toybox bereitgestellt. Selbst unter Android 6.0
fsck_msdos
scheint "Marshmallow" (das nur zum Überprüfen von SD-Karten mit 32 GB oder weniger verwendet werden sollte) entweder von FreeBSD oder NetBSD zu stammen.fsck_exfat
(mit dem die meisten SD-Karten mit 64 GB oder mehr überprüft werden können) stammen von einem anderen Ort. Ich bin mir nicht sicher, wo.Deine Muschel
Bei modernen Android-Versionen ist die Shell
mksh
die MirBSD-Korn-Shell. Wenn ausgeführtmksh
wird, geben Siemksh
Folgendes ein, um Ihre Version zu ermitteln:quelle
Ich würde vorschlagen, ein virtuelles Android-Gerät (AVD) zu starten, eine Verbindung mit adb herzustellen und den betreffenden Android-Shell-Befehl auszuführen:
Wenn jemand die Flagge kennt, um Android-Shell-Befehle zum Drucken des Verwendungsbildschirms zu geben, lass es mich wissen. Ich habe versucht --help, -help, -h, --usage, etc.
Versuchen Sie, http://developer.android.com/guide/developing/tools/adb.html#shellcommands auszuführen
ls /system/bin
und anzuzeigenquelle
Die Menge der von Android verwendeten Shell-Befehle scheint zu sein
toolbox
. Informationen darüber scheinen nicht zentralisiert zu sein (was mir dunkel erscheint ), aber man könnte Informationen in der Umgebung suchen und finden, zhttp://www.all-things-android.com/content/android-toolbox-command-reference
Bei "intensiver" Nutzung der Kommandozeile wird BusyBox generell als Ersatz für empfohlen
toolbox
.Credits / Verwandte:
/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
quelle