jackpal / Android-Terminal-Emulator

author
5 minutes, 39 seconds Read

#The Android Shell

„Powłoka” jest programem, który słucha wejścia klawiatury od użytkownika i wykonuje działania zgodnie z instrukcjami użytkownika. Urządzenia z Androidem dostarczane są z prostym programem powłoki. Ten program powłoki jest w większości nieudokumentowany. Ponieważ wielu ludzi jest nim zaciekawionych, pomyślałem, że napiszę dla niego trochę dokumentacji.

Currently this documentation is incomplete, sorry!

##Wspólne problemy

Wbudowana powłoka ma bardzo ograniczoną obsługę błędów. Gdy nieprawidłowo wpiszesz nazwę polecenia, powie „odmowa pozwolenia”, nawet jeśli prawdziwym problemem jest to, że nie mogła znaleźć polecenia:

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

#Zmienna PATH

Powłoka Androida uruchomi każdy program, który znajdzie w swojej PATH. PATH jest oddzieloną dwukropkiem (’:’) listą katalogów. Możesz dowiedzieć się co PATH twojej powłoki jest ustawione przez użycie wbudowanego polecenia echo:

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

W zależności od twojej powłoki, możesz zobaczyć inny wynik.

#Wbudowane polecenia

Każda powłoka ma kilka wbudowanych poleceń. Niektóre popularne wbudowane polecenia to:

  • echo — wypisuje tekst na stdout.
  • set — ustawia zmienne powłoki
  • export — udostępnia zmienne powłoki programom wiersza poleceń
  • cd — zmienia bieżący katalog.
  • pwd — wypisuje nazwę bieżącego katalogu.

#Komendy Aby dowiedzieć się, jakie komendy są dostępne, użyj polecenia „ls” na każdym z katalogów w zmiennej PATH.

#Znajdowanie dokumentacji dla komend Androida.

Wiele komend Androida jest opartych na standardowych komendach Linuksa (lub bsd). Jeśli jesteś ciekaw jakiegoś polecenia, możesz czasem dowiedzieć się, jak ono działa, używając polecenia „man” na stacjonarnym komputerze z systemem Linux lub OSX (Apple Macintosh). Wersja polecenia w systemie Linux lub OSX może różnić się szczegółami, ale duża część dokumentacji nadal będzie miała zastosowanie do wersji polecenia w systemie Android.

Innym źródłem dokumentacji dla osób nieposiadających pod ręką maszyny z systemem Linux lub OSX jest użycie przeglądarki internetowej i użycie wyszukiwarki internetowej do wyszukania tekstu: „man Linux command-name”.

##Lista poleceń

Poniżej znajduje się lista poleceń, które są obecne na telefonie Nexus S z systemem Android 2.3.3 „user-debug” build. Wiele z tych poleceń nie jest obecnych na telefonie „użytkownika”. (Brakuje ich w telefonie „użytkownika”, ponieważ są specyficzne dla rozwijania lub debugowania systemu operacyjnego Android.)

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

Zauważ, że domyślnie nie ma katalogu /data/local/bin. Możesz utworzyć ten katalog za pomocą polecenia „mkdir”, jeśli chcesz.

$ ls /sbinopendir failed, Permission denied

Katalog /sbin istnieje, ale nie masz uprawnień dostępu do niego. Potrzebujesz dostępu roota. Jeśli masz telefon deweloperski lub w inny sposób masz dostęp roota do telefonu, możesz zobaczyć, co jest w tym katalogu.

$ su# ls /sbinueventdadbd# exit$ 

Zauważ, że znak zachęty powłoki zmienia się z '$’ na '#’, aby wskazać, że masz dostęp roota.

Zauważ także, że żadne z poleceń /sbin nie jest użyteczne dla powłoki — pliki adb i ueventd są programami 'daemon’ używanymi do implementacji programu Android Debugger „adb”, który jest używany przez deweloperów.

$ ls /vendor/bingpsdpvrsrvinit

Vendor/bin jest miejscem, gdzie producenci urządzeń mogą umieścić pliki wykonywalne specyficzne dla urządzenia. Te pliki pochodzą z Nexusa S.

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

Ten katalog nie istnieje w Nexusie S.

$ ls /system/binam

am to Menedżer aktywności Androida. Jest on używany do uruchamiania i zatrzymywania działań Androida (np. aplikacji) z wiersza poleceń. Wpisz am, aby uzyskać listę opcji.

amixaplay

Odtwarzacz plików audio z wiersza poleceń.

app_processapplypatch

Używany do stosowania poprawek do plików androidowych.

arec

Rejestrator audio z wiersza poleceń.

audioloopbluetoothd

BlueTooth daemon

bmgr

Menedżer kopii zapasowych – wpisz polecenie przez siebie, aby uzyskać dokumentację.

bootanimation

Rysuje animację rozruchu. Być może będziesz musiał zresetować telefon, aby się z tego wydostać.

brcm_patchram_plusbugreportcat

Kopiuje zawartość pliku na standardowe wyjście.

chmod

Zmienia tryb pliku (np. czy można go odczytać lub zapisać.)

chown

Zmień właściciela pliku.

cmp

Porównaj dwa pliki bajt po bajcie

dalvikvm

Maszyna wirtualna Dalvik. (Służy do uruchamiania aplikacji systemu Android.)

date

Wyświetla bieżącą datę i godzinę

dbus-daemondd

Konwertuje i kopiuje plik. Domyślnie kopiuje standard in do standard out.

debuggerddexoptdf

Pokazuje ilość wolnego miejsca w różnych systemach plików na urządzeniu.

dhcpcddmesgdnsmasqdumpstatedumpsysdvzfsck_msdosgdbservergeteventgetpropgziphciattachhdidifconfig

Pokazuje bieżącą konfigurację interfejsów sieciowych (IP, adres MAC itp.)

iftop

Pokazuje bieżące procesy korzystające z interfejsów sieciowych (góra, ale dla sieci)

imeinputinsmodinstalldioctlioniceiptables

Zarządza zaporą sieciową

keystorekeystore_clikill

Wysyła sygnały do procesów.

linkerln

Używany do ustawiania połączenia systemu plików.

loglogcat

Wydrukowuje dziennik systemu Android runtime.

logwrapperls

Listy plików.

lsmodlsofmake_ext4fsmediaservermkdir

Tworzy katalog.

monkey

Program wysyłający losowe zdarzenia, używany do testowania aplikacji. (Jak małpa bawiąca się urządzeniem.)

mountmtpdmv

Przesuń plik z jednego katalogu do drugiego. (Tylko w tym samym systemie plików. Użyj polecenia „cat a > b”, aby skopiować plik między systemami plików.

nandreadndcnetcfgnetdnetstatnewfs_msdosnotifyomx_testspandpingpmpppdprintenvps

Lista aktywnych procesów.

qemu-propsqemudracoonradiooptionsreboot

Reboot urządzenia.

recordrenicerildrm

Usuń plik.

rmdir

Usuń katalog.

rmmodroutertp_testrun-asschedtestschedtopsdcardsdptoolsendeventserviceservicemanagersetconsolesetpropsetup_fsshshowleasesleepsmdstagefrightstart

Uruchamia system operacyjny Android.

stop

Zatrzymuje runtime systemu Android.

surfaceflingersvcsyncsystem_servertctestid3toolboxtop

Pokazuje, które procesy aktualnie wykorzystują najwięcej czasu procesora.

umountuptime

Wyświetla, jak długo urządzenie działało od ostatniego uruchomienia.

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

Program do bezpiecznego kopiowania. (Służy do kopiowania plików przez sieć.)

showmapshowslabsqlite3

Służy do administrowania bazami danych SQLite.

strace

Komenda śledzenia systemu – służy do sprawdzania, jakie wywołania systemowe wykonuje program.

su

Uruchamia powłokę z uprawnieniami roota.

#Wersje powłoki Androida

  • Android 1.0 używał powłoki, która nie miała uzupełniania zakładek ani edycji historii.
  • Android 2.3 dodał edycję historii. Możesz na przykład użyć strzałek góra/dół do edycji poprzednich poleceń.

#Inne powłoki

#Busybox

Busybox jest programem, który zawiera powłokę i zestaw narzędzi wiersza poleceń. Poszukaj w Android Market „Busybox” i powinieneś znaleźć kilka wersji, które możesz zainstalować. Powłoka Busybox zawiera uzupełnianie tabulatorów i edycję historii. Niektóre wersje Busybox dla Androida nie wymagają rootowania telefonu.

#Debian utilities

Możesz zainstalować pełną powłokę Debiana i narzędzia. (Debian jest popularną dystrybucją desktopowego Linuksa.) Nie znam szczegółów i może to wymagać „zrootowanego” telefonu. Spróbuj poszukać w sieci „Debian Android install”.

#Niestandardowe ROM-y

Niektóre niestandardowe ROM-y mają swoje własne powłoki i narzędzia. Jeśli używasz niestandardowego ROM-u, sprawdź jego dokumentację, aby dowiedzieć się, co jest dostępne.

.

Similar Posts

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.