The Android Debug Bridge (adb) provides a Unix shell that you can use to run a variety of commands on an emulator or connected device.


ADB Shell Commands


Issuing Shell Commands

You can use the shell command to issue commands, with or without entering the adb remote shell on the emulator/device. To issue a single command without entering a remote shell, use the shell command like this:


List of all attached device


Download a specified file from an device to your computer


Upload a specified file from your computer to an device


List directory contents


Change directory


Remove files or directories


Make directories


Create empty file


Current working directory location


Copy files and directories


Move or rename files


Starts (restarts) an emulator/device instance


Stops execution of an emulator/device instance


Prints kernel debugging messages to the screen


Show/manipulate routing, devices, policy routing and tunnels


Network statistics


Network connection tool


Test the connection and latency between two network connection


Using activity manager (am)

Activity manager (am) tool to perform various system actions, such as start an activity, force-stop a process, broadcast an intent, modify the device screen properties, and more. While in a shell, the syntax is:

Available activity manager commands:

Start an Activity specified by <INTENT>.

Start the Service specified by <INTENT>.

Kill all processes associated with <PACKAGE>


Using package manager (pm)

Within an adb shell, you can issue commands with the package manager (pm) tool to perform actions and queries on application packages installed on the device. While in a shell, the syntax is:

Available activity manager commands:

Prints all packages, optionally only those whose package name contains the text in <FILTER>.

Prints all known permission groups

Prints all known permissions, optionally only those in <GROUP>

Prints all features of the system

Prints all users on the system

Installs a package (specified by <PATH>) to the system


Taking a device screenshot

The screencap command is a shell utility for taking a screenshot of a device display. While in a shell, the syntax is:


Recording a device screen

The screenrecord command is a shell utility for recording the display of devices running Android 4.4 (API level 19) and higher. The utility records screen activity to an MPEG-4 file.


List of all the available shell programs


More commands