jackpal / Android-Terminal-Emulator

author
6 minutes, 15 seconds Read

#The Android Shell

Un „shell” este un program care ascultă intrările de la tastatură de la un utilizator și efectuează acțiuni conform indicațiilor utilizatorului. Dispozitivele Android vin cu un program shell simplu. Acest program shell este în mare parte nedocumentat. Deoarece mulți oameni sunt curioși în legătură cu el, m-am gândit să scriu o documentație pentru el.

Currently this documentation is incomplete, sorry!

##Common problems

Probleme comune

Programul shell încorporat are o gestionare a erorilor foarte limitată. Când tastați incorect numele unei comenzi, va spune „permission denied”, chiar dacă problema reală este că nu a putut găsi comanda:

$ dirdir: permission denied <---- this is a misleading error message, should say 'dir: not found'$ ls... listing of current directory

#Variabila PATH

Arhiva Android va rula orice program pe care îl găsește în PATH-ul său. PATH este o listă de directoare separate prin două puncte (‘:’). Puteți afla la ce este setat PATH-ul shell-ului dvs. folosind comanda încorporată echo:

$ echo $PATH/data/local/bin:/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin

În funcție de shell-ul dvs., este posibil să vedeți un rezultat diferit.

#Comandele încorporate

Care shell are câteva comenzi încorporate. Câteva comenzi comune încorporate sunt:

  • echo — tipărește text în stdout.
  • set — setează variabilele shell-ului
  • export — face variabilele shell-ului disponibile pentru programele din linia de comandă
  • cd — schimbă directorul curent.
  • pwd — tipărește numele directorului curent.

#ComenziPentru a afla ce comenzi aveți la dispoziție, utilizați comanda „ls” pe fiecare dintre directoarele din variabila PATH.

##Finding documentation for the Android commands.

Multe dintre comenzile Android se bazează pe comenzi standard Linux (sau bsd). Dacă sunteți curioși în legătură cu o comandă, uneori puteți afla cum funcționează folosind comanda „man” pe un computer desktop Linux sau OSX (Apple Macintosh). Versiunea Linux sau OSX a comenzii poate fi diferită în detalii, dar o mare parte din documentație se va aplica în continuare la versiunea Android a comenzii.

O altă sursă de documentație pentru persoanele care nu au la îndemână un calculator Linux sau OSX este să folosească un browser web și să utilizeze un motor de căutare web pentru a căuta textul: „man Linux nume-comandă”.

##Lista de comenzi

În cele ce urmează este o listă a comenzilor care sunt prezente pe un telefon Nexus S care rulează un Android 2.3.3 „user-debug” build. Multe dintre aceste comenzi nu sunt prezente pe un telefon „user”. (Ele lipsesc de pe un telefon „user” deoarece sunt specifice dezvoltării sau depanării sistemului de operare Android.)

$ ls /data/local/bin/data/local/bin: No such file or directory

Rețineți că, în mod implicit, nu există un director /data/local/bin. Dacă doriți, puteți crea acest director folosind comanda „mkdir”.

$ ls /sbinopendir failed, Permission denied

Directorul /sbin există, dar nu aveți permisiunea de a-l accesa. Aveți nevoie de acces root. Dacă aveți un telefon de dezvoltator, sau dacă aveți altfel acces root la telefon, puteți vedea ce se află în acest director.

$ su# ls /sbinueventdadbd# exit$ 

Observați că promptul shell-ului se schimbă de la „$” la „#” pentru a indica faptul că aveți acces root.

Rețineți, de asemenea, că niciuna dintre comenzile /sbin nu este utilă pentru shell – fișierele adb și ueventd sunt programe „daemon” folosite pentru a implementa programul Android Debugger „adb” care este folosit de dezvoltatori.

$ ls /vendor/bingpsdpvrsrvinit

Vendor/bin este locul în care vânzătorii de dispozitive pot pune executabilele specifice dispozitivelor. Aceste fișiere provin dintr-un Nexus S.

$ ls /system/sbin/system/sbin: No such file or directory

Acest director nu există pe un Nexus S.

$ ls /system/binam

am este Android Activity Manager. Este utilizat pentru a porni și opri activitățile Android (de exemplu, aplicații) din linia de comandă. Tastați am de unul singur pentru a obține o listă de opțiuni.

amixaplay

Reproducător de fișiere audio în linie de comandă.

app_processapplypatch

Utilizat pentru a aplica patch-uri fișierelor Android.

arec

Înregistrator audio în linie de comandă.

audioloopbluetoothd

Demon BlueTooth

bmgr

Manager de backup – tastați comanda singură pentru a obține documentația.

bootanimation

Desenează animația de pornire. Este posibil să trebuiască să resetați telefonul pentru a ieși din asta.

brcm_patchram_plusbugreportcat

Copiază conținutul unui fișier pe ieșirea standard.

chmod

Schimbă modul unui fișier (de ex. dacă poate fi citit sau scris.)

chown

Schimbarea proprietarului unui fișier.

cmp

Compararea a două fișiere octet cu octet

dalvikvm

Mașina virtuală dalvik. (Folosită pentru a rula aplicații Android.)

date

Primă data și ora curentă

dbus-daemondd

Convertiți și copiați un fișier. În mod implicit, copiază standard in în standard out.

debuggerddexoptdf

Afișează cât spațiu este liber pe diferite sisteme de fișiere de pe dispozitivul dvs.

dhcpcddmesgdnsmasqdumpstatedumpsysdvzfsck_msdosgdbservergeteventgetpropgziphciattachhdidifconfig

Afișează configurația curentă a interfețelor de rețea (IP, adresă MAC etc)

iftop

Afișează procesele curente care utilizează interfețele de rețea (sus, dar pentru rețele)

imeinputinsmodinstalldioctlioniceiptables

Gestionați firewall-ul

keystorekeystore_clikill

Întoarceți semnale către procese.

linkerln

Utilizat pentru a stabili o legătură între un sistem de fișiere.

loglogcat

Imprimă jurnalul de execuție Android.

logwrapperls

Întocmește fișiere.

lsmodlsofmake_ext4fsmediaservermkdir

Face un director.

monkey

Program care trimite evenimente aleatorii, folosit pentru a testa aplicații. (Ca și cum ar avea o maimuță care se joacă cu aparatul.)

mountmtpdmv

Mută un fișier dintr-un director în altul. (Numai pe același sistem de fișiere. Folosiți „cat a > b” pentru a copia un fișier între sisteme de fișiere.

nandreadndcnetcfgnetdnetstatnewfs_msdosnotifyomx_testspandpingpmpppdprintenvps

Înumeră procesele active.

qemu-propsqemudracoonradiooptionsreboot

Repornește dispozitivul.

recordrenicerildrm

Îndepărtează un fișier.

rmdir

Îndepărtează un director.

rmmodroutertp_testrun-asschedtestschedtopsdcardsdptoolsendeventserviceservicemanagersetconsolesetpropsetup_fsshshowleasesleepsmdstagefrightstart

Pornește runtime-ul Android.

stop

Încetează timpul de execuție Android.

surfaceflingersvcsyncsystem_servertctestid3toolboxtop

Afișează ce procese folosesc în prezent cel mai mult timp de procesare.

umountuptime

Înregistrează cât timp a funcționat dispozitivul de când a fost pornit ultima dată.

vdcvmstatvoldwatchpropswipewpa_cliwpa_supplicant$ ls /system/xbinadd-property-tagbtoolcheck-lost+founddexdumpdhdutilhcidumplatencytoplibrankopcontroloprofiledprocmemprocrankrawbuscp

Program de copiere securizată. (Folosit pentru a copia fișiere în rețea.)

showmapshowslabsqlite3

Utilizat pentru a administra bazele de date SQLite.

strace

Comandă de urmărire a sistemului – se folosește pentru a vedea ce apeluri de sistem face un program.

su

Pornește un shell cu privilegii de root.

#Versiuni ale Android Shell

  • Android 1.0 folosea un shell care nu avea completare de tabulare sau editare a istoricului.
  • Android 2.3 a adăugat editarea istoricului. De exemplu, puteți folosi săgețile sus/jos pentru a edita comenzile anterioare.

#Alte shell-uri

#Busybox

Busybox este un program care conține un shell și un set de utilitare pentru linia de comandă. Căutați pe Android Market pentru „Busybox” și ar trebui să găsiți câteva versiuni pe care le puteți instala. Cochilia Busybox include completarea filelor și editarea istoricului. Unele versiuni de Busybox pentru Android nu necesită să vă faceți root pe telefon.

#Utilități Debian

Puteți instala shell-ul și utilitățile Debian complete. (Debian este o distribuție populară de Linux pentru desktop.) Nu cunosc detaliile și este posibil să fie nevoie de un telefon „înrădăcinat”. Încercați o căutare pe internet pentru „Debian Android install”.

#Custom ROMs

Câteva ROM-uri personalizate vin cu propriile lor shell-uri și utilități. Dacă folosiți un ROM personalizat, verificați documentația acestuia pentru a afla ce este disponibil.

.

Similar Posts

Lasă un răspuns

Adresa ta de email nu va fi publicată.