it-swarm.com.de

Wie verwende ich den Befehl su über der Adb-Shell?

Ich muss ein Skript erstellen, das auf Android-Geräten eine ganze Menge ausführt. Mein Gerät ist verwurzelt. Wenn ich die Shell betrete, kann ich den Befehl su geben, und es funktioniert, aber ich muss diesen Befehl wie folgt übergeben:

adb Shell "
su;
mv /sdcard/Download/app_test /data/local;
cd /data/local;
./app_test;
exit;
exit;
"

wenn ich einige Befehle vor dem su setze, funktioniert es entsprechend dem, was ich gelesen habe. su erstellt eine neue Shell, die sofort zurückgegeben wird, aber ich muss Befehle für die su-Shell geben. Wie kann ich das tun?

20
Alex

Wenn Ihr Telefon verwurzelt ist, können Sie mit dem Befehl "su -c" Befehle ausführen.

Hier ein Beispiel für einen cat-Befehl in der Datei build.prop, um Produktinformationen zu Mobiltelefonen abzurufen.

adb Shell "su -c 'cat /system/build.prop | grep" product "'"

Dies ruft die root-Berechtigung auf und führt den Befehl innerhalb der '' aus.

Beachten Sie die fünf Endzitate, die erforderlich sind, um ALLE Ihre Endzitate zu schließen, da andernfalls ein Fehler angezeigt wird.

Zur Verdeutlichung ist das Format so.

adb Shell "su -c '[Ihr Befehl geht hier]'"

Stellen Sie sicher, dass Sie den Befehl genau so eingeben, wie Sie es normalerweise bei der Ausführung in Shell tun würden.

Probieren Sie es aus, ich hoffe, das hilft.

26
A-Droid Tech

Der Befehl su führt nichts aus, es erhöht lediglich Ihre Berechtigungen.

Versuchen Sie adb Shell su -c YOUR_COMMAND.

4
shkschneider

Standardmäßig erlaubt CM10 nur den Root-Zugriff von Apps, nicht von ADB. Gehen Sie zu Einstellungen -> Entwickleroptionen -> Root-Zugriff und ändern Sie die Option zu "Apps und ADB".