ADB Shell Commands List and Detailed Cheat Sheet

  • Rakesh
  • March 15, 2020

ADB o Android Debug Bridge es una herramienta de línea de comandos desarrollada para facilitar la comunicación entre un ordenador y un emulador o dispositivo Android conectado. Mediante los comandos de ADB y ADB Shell podemos realizar diversas acciones en un dispositivo. Para poder ejecutar los comandos de ADB y Fastboot, el paquete Android SDK Platform-tools debe estar instalado en tu ordenador Windows, Linux o macOS. En este artículo, exploraremos una enorme lista de comandos de ADB Shell con una hoja de trucos.

No te olvides de revisar la lista detallada de comandos ADB explicando la función de cada uno de ellos.

¿Qué es ADB Shell?

Los comandos ADB se pueden utilizar para depurar dispositivos Android, instalar o desinstalar aplicaciones y obtener información sobre un dispositivo conectado. ADB funciona con la ayuda de tres componentes llamados Cliente, Daemon y Servidor. Si tienes curiosidad por saber cómo estos 3 componentes trabajan juntos para hacer que ADB y los comandos del shell ADB funcionen, mira a continuación:

  • Cliente: Es muy equipo en el que se utiliza un terminal de línea de comandos para emitir un comando ADB. que envía comandos.
  • Daemon: O, ADBD es un proceso en segundo plano que se ejecuta en los dos dispositivos conectados. Es responsable de ejecutar los comandos en un emulador conectado o dispositivo Android.
  • Servidor: Se ejecuta en segundo plano y funciona como un puente entre el Cliente y el Daemon y gestiona la comunicación. que gestiona la comunicación entre el cliente y el daemon.
    • Los comandos de ADB Shell proporcionan acceso a un Shell Unix que ejecuta un comando directamente en su dispositivo Android. Tan pronto como se ejecuta un comando ‘adb shell’ en el terminal de comandos, envía una señal a su dispositivo Android y activa la consola de comandos de shell remoto. Por lo tanto, los comandos ADB Shell le permiten controlar su dispositivo Android.

      Usando los comandos ADB, puede reiniciar su dispositivo, empujar y extraer archivos, crear una copia de seguridad y restaurarla, sideload un paquete zip de actualización, o un APK. Los comandos de ADB Shell, sin embargo, funcionan a un nivel mucho más profundo. Se pueden usar para cambiar la resolución de la pantalla de tu dispositivo, desinstalar bloatware o apps del sistema, habilitar y deshabilitar características, modificar los archivos del sistema y cambiar su configuración directamente usando comandos desde tu ordenador.

      En realidad, hay más tareas que puedes realizar usando estos comandos, y a continuación las revisaremos todas con ejemplos. Ten en cuenta que hay tres requisitos previos antes de poder hacer uso de los comandos ADB, Fastboot y ADB shell.

      • Herramientas de la plataforma SDK de Android
      • Controladores USB para su dispositivo Android
      • Habilitar la depuración USB
      • Ahora puede utilizar Web ADB en una ventana del navegador web para ejecutar comandos ADB en un dispositivo Android o en un ordenador sin necesidad de instalar las herramientas ADB y Fastboot y los controladores USB.

        Por último, sin más preámbulos, vamos a proceder con nuestra lista de comandos ADB Shell.

        Atención: No utilices los comandos mencionados en esta página a menos que sepas cómo usarlos y tengas algún conocimiento o experiencia previa.

        Lista de comandos de ADB Shell &

        En esta hoja de trucos de comandos de ADB Shell, intentaré explicar la función de todos los comandos en un lenguaje sencillo.

        adb shell

        Este comando activa la consola de comandos shell remota en el smartphone o tablet Android conectado.

        adb shell pm uninstall

        Este es realmente un comando ADB Shell muy útil. Usándolo, puedes desinstalar fácilmente las apps del sistema no deseadas. Para poder ejecutarlo, debes emitir primero el comando ‘adb shell’. A continuación, puede utilizar pm uninstall -k --user 0 o pm uninstall --user 0 seguido del nombre del paquete de la aplicación Android como se muestra a continuación.

        pm uninstall -k --user 0 com.facebook.appmanager

        -k: Mantenga los datos de la aplicación y la caché después de la eliminación del paquete. Si quieres que los datos de la app se borren también, utiliza lo siguiente

        pm uninstall --user 0 com.android.chrome

        Si no sabes el nombre del paquete de la app que quieres eliminar, puedes utilizar adb shell pm list packages para encontrarlo.

        Este comando puede ayudarte si quieres eliminar todo el bloatware de tu teléfono Android. Ten en cuenta que la mayoría de las apps del sistema no tienen la opción ‘Desinstalar’ en el dispositivo pero este comando funciona mágicamente.

        adb shell cmd package install-existing

        Usando el comando anterior, puedes volver a instalar una app del sistema desinstalada.

        cmd package install-existing com.facebook.appmanager

        adb shell pm disable-user -user 0

        Si quieres desactivar una aplicación del sistema en tu dispositivo Android, puedes ejecutar el comando anterior seguido del nombre del paquete de la app

        pm disable-user --user 0 com.google.ar.core

        adb shell pm clear -user 0

        Usando este comando, puedes borrar todos los datos asociados a una app.

        adb shell pm clear -user 0 com.facebook.appmanager

        adb shell pm hide -user 0

        En caso de que quieras ocultar una app instalada en tu dispositivo Android, puedes ejecutar esta línea de comando seguida del nombre del paquete de la app.

        adb shell pm hide --user 0 com.whatsapp

        adb shell pm list packages

        Usando el comando ADB Shell anterior, puedes imprimir la lista de los nombres de los paquetes de aplicaciones para todas las aplicaciones instaladas en tu dispositivo Android. Puedes usar este comando con diferentes parámetros para obtener una lista más específica de paquetes de apps.

        Por ejemplo, si quieres listar sólo las apps del sistema, usa

        adb shell pm list packages -s

        Para listar todas las apps de terceros instaladas en tu teléfono o tablet Android, emite el siguiente comando.

        adb shell pm list packages -3

        Si quieres que ADB Shell muestre la lista de todas las apps habilitadas o deshabilitadas en tu dispositivo, prueba el comando con parámetros como ‘-d’ (para las apps deshabilitadas), ‘-e’ (para las apps habilitadas) y ‘-u’ (para las apps desinstaladas).

        adb shell pm list packages -d
        adb shell pm list packages -e
        adb shell pm list packages -u

        Para listar paquetes de apps con un filtro de palabras clave específico.

        adb shell pm list packages <keywords>

        Para encontrar la lista de apps junto con sus paquetes asociados, ejecuta el siguiente comando

        adb shell pm list packages -f

        Puedes obtener fácilmente una lista de paquetes de grupo por un determinado fabricante, o venir término común. Por ejemplo, si quieres listar todas las aplicaciones de Google, puedes usar el siguiente comando.

        adb shell pm list packages | grep 'google'

        Puedes sustituir «google» por «samsung», «huawei», «xiaomi», «miui», «evenwell», «android», «facebook», etc. para obtener la lista de paquetes deseada.

        adb shell pm path <package-name>

        Este comando muestra la ruta del APK en el sistema de archivos del dispositivo.

        adb shell pm create-user

        Puedes usar este comando para crear un nuevo usuario en tu dispositivo Android.

        adb shell pm create-user username

        adb shell pm remove-user

        En caso de que quieras eliminar un usuario de tu dispositivo, puedes utilizar el comando anterior con seguido del user_id como se muestra a continuación.

        adb shell pm remove-user user 1

        adb shell pm get-max-users

        Al usar este comando, puedes imprimir el número máximo de usuarios soportados en un dispositivo Android.

        adb shell pm list features

        Utiliza el comando anterior para imprimir todas las características soportadas del sistema.

        adb shell pm list permissions

        Este comando imprime la lista de todos los permisos conocidos, opcionalmente sólo los de group. Puedes utilizarlo con los siguientes parámetros.

        • -g: Organizar los permisos por grupo
        • -f: Imprimir toda la información
        • -s: Breve resumen de los permisos
        • -d: Lista de permisos peligrosos solamente
        • -u: Listar los permisos vistos por los usuarios solamente
        adb shell pm list permissions -d group

        configuración del shell adb

        Puedes usar este comando para obtener información sobre ciertas configuraciones en tu dispositivo Android. Añadiendo diferentes parámetros, puedes averiguar el proveedor de ajustes de Android, el nivel de volumen actual del sistema, el sonido de las notificaciones, el ID del dispositivo, la dirección MAC de Bluetooth, el estado actual de los datos móviles, el estado actual del WiFi, etc.

        • adb shell settings list system
        • adb shell settings get system volume_system
        • adb shell settings get system notification_sound
        • adb shell settings list secure
        • adb shell settings get secure android_id
        • adb shell settings get secure bluetooth_address
        • adb shell settings list global
        • adb shell settings get global mobile_data
        • adb shell settings get global wifi_on

        adb shell dumpsys

        Es un comando muy flexible que se puede utilizar de forma independiente o con varios parámetros para obtener datos relacionados con la batería, pantalla, CPU, RAM, almacenamiento, etc. La ejecución de este comando te dará información detallada sobre la configuración de software y hardware del dispositivo Android.

        Nota: Para poder utilizar esta herramienta no olvides añadir el permiso en el manifiesto de tu Android automáticamente android.permission.DUMP

        adb shell dumpsys

        Otras variantes del comando son las siguientes:

        • adb shell dumpsys input
        • adb shell dumpsys display
        • adb shell dumpsys battery
        • adb shell dumpsys batterystats
        • adb shell dumpsys activity
        • adb shell dumpsys cpuinfo
        • adb shell dumpsys battery
        • Ejecutando el comando ‘adb shell dumpsys cpuinfo’, por ejemplo, imprimirá una lista del uso de la CPU por parte de los procesos y aplicaciones en ejecución en tu dispositivo Android, como se muestra a continuación:

        PS C:\Users\Technastic\Desktop> adb devices List of devices attached RZ8M810BARJ device PS C:\Users\Technastic\Desktop> adb shell dumpsys cpuinfo Load: 12.48 / 12.76 / 12.82 CPU usage from 138400ms to 89027ms ago: 8.1% 5954/system_server: 5.5% user + 2.5% kernel / faults: 9802 minor 5 major 3.1% 6485/com.android.phone: 2.2% user + 0.9% kernel / faults: 6575 minor 1 major 2.7% 6596/com.android.systemui: 2.1% user + 0.6% kernel / faults: 3178 minor 1 major 2.6% 26484/com.netflix.mediaclient: 1.3% user + 1.3% kernel / faults: 109 minor 2% 2231/sugov:0: 0% user + 2% kernel 1% 24100/kworker/u18:2: 0% user + 1% kernel 1% 5706/statsd: 0.9% user + 0.1% kernel 0.5% 3752/ueventd: 0.4% user + 0.1% kernel / faults: 25 minor 0.5% 5721/rild: 0.3% user + 0.2% kernel / faults: 20 minor 0.5% 5169/logd: 0.3% user + 0.2% kernel / faults: 43 minor 0.5% 5558/surfaceflinger: 0.3% user + 0.2% kernel / faults: 1 minor 0.4% 5170/servicemanager: 0.2% user + 0.2% kernel 0.4% 1/init: 0.3% user + 0% kernel 0.4% 19725/kworker/u17:3: 0% user + 0.4% kernel 0.3% 5546/lmkd: 0% user + 0.3% kernel 0.3% 5456/kworker/u17:1: 0% user + 0.3% kernel 0.3% 5715/argosd: 0.1% user + 0.1% kernel 0.3% 2233/sugov:4: 0% user + 0.3% kernel 0.2% 23487/kworker/u18:0: 0% user + 0.2% kernel 0.1% 23896/kworker/u16:3: 0% user + 0.1% kernel / faults: 6 minor 0.1% 8/rcu_preempt: 0% user + 0.1% kernel 0.1% 5718/lhd: 0% user + 0.1% kernel 0.1% 23489/kworker/0:2: 0% user + 0.1% kernel

        adb shell wm density

        El comando anterior puede utilizarse para averiguar la densidad de píxeles de la pantalla de tu dispositivo Android.

        adb shell dumpsys window displays

        Obtendrás una salida muy detallada en la ventana de comandos con información como resolución de píxeles, FPS y DPI de la pantalla de tu teléfono.

        Display: mDisplayId=0 init=1440x3040 560dpi base=1080x2280 420dpi cur=1080x2280 app=1080x2069 rng=1080x1017-2069x2069 deferred=false mLayoutNeeded=false mTouchExcludeRegion=SkRegion((0,0,1080,2280)) mDisplayInfo=DisplayInfo{"Built-in Screen, displayId 0", uniqueId "local:0", app 1080 x 2069, real 1080 x 2280, largest app 2069 x 2069, smallest app 1080 x 1017, mode 1, defaultMode 1, modes [{id=1, width=1440, height=3040, fps=60.000004}

        adb shell wm size

        Puedes averiguar la resolución de pantalla de tu teléfono con este comando.

        PS C:\Users\Technastic\Desktop> adb shell wm size Physical size: 1440x3040 Override size: 1080x2280

        Si quieres modificar la resolución de pantalla y la densidad de píxeles de la pantalla de tu Android. Si no estás seguro de la resolución de pantalla de tu dispositivo, ejecuta el comando que se indica a continuación. Supongamos que la resolución de pantalla de tu teléfono es QHD+, puedes cambiarla fácilmente a Full HD+ o HD+.

        • FHD
        adb shell wm size 1080x2220
        adb shell wm density 420
        • HD
        adb shell wm size 720x1560
        adb shell wm density 360

        Comando de ADB Shell para enviar pantalla de SMS

        Si quieres enviar un mensaje de texto usando un comando, prueba el siguiente código.

        adb shell am start -a android.intent.action.SENDTO -d sms:+918052000222 --es sms_body "Test --ez exit_on_sent false

        adb shell screencap

        Utilizando este comando, puedes capturar una pantalla y descargarla en tu ordenador utilizando el comando ‘adb pull’ como se ha descrito anteriormente.

        adb shell screencap /sdcard/screenshot-01.png

        adb shell screenrecord

        En los dispositivos Android que ejecutan Android 4.4 KitKat y superiores, puedes incluso grabar la pantalla de tu teléfono o tableta y descargar el vídeo grabado a tu ordenador. Además, también puedes establecer condiciones como la duración del vídeo, la resolución en píxeles y el bitrate del vídeo, etc.

        adb shell screenrecord /sdcard/screenrecord-01.mp4
        adb pull screenrecord /sdcard/screenrecord.mp4

        Puedes detener la grabación de la pantalla usando Ctrl+C. En caso de que quieras grabar la pantalla en una resolución específica, el siguiente comando te permite establecer la anchura y la altura personalizadas en píxeles.

        adb shell screenrecord --size 1920x1080 /sdcard/screenrecord-01.mp4

        Por defecto, la duración del grabador de pantalla de Android está establecida en 180 segundos (3 minutos). Puedes disminuir este límite de tiempo según tus necesidades (180 segundos es el límite máximo).

        adb shell screenrecord --time-limit 120 /sdcard/screenrecord-01.mp4

        De igual forma, también puedes determinar el bitrate de la salida de vídeo. Para establecer el bitrate a 4MBPS, por ejemplo, puedes utilizar el siguiente valor:

        adb shell screenrecord --bit-rate 6000000 /sdcard/screenrecord-01.mp4

        adb shell getprop & adb shell setprop

        Los comandos ‘getprop’ y ‘setprop’ se pueden utilizar para ver y establecer o cambiar la configuración del archivo ‘build.prop’ en los dispositivos Android. El siguiente comando, por ejemplo, muestra la información de las propiedades del sistema Android.

        adb shell getprop

        A continuación se muestran algunos ejemplos más:

        getprop ro.build.version.sdk
        getprop ro.chipname

        En caso de que quieras cambiar el valor de una entrada en el build.prop, puedes utilizar los comandos ‘adb shell setprop’. Mira los ejemplos siguientes:

        getprop net.dns1 1.2.3.4
        setprop net.dns1 1.3.4.5
        getprop net.dns2 1.1.2.3
        setprop net.dns2 1.2.3.4

        De la misma manera, si quieres cambiar la configuración del tamaño de VMHeap en tu dispositivo Android, puedes usar el siguiente comando.

        setprop dalvik.vm.heapsize 60m

        Hay algunas variaciones más del comando ‘adb shell getprop’ que te permiten ver información sobre las propiedades del sistema Android, el nivel de la API del SDK, la versión del parche de seguridad de Android, el Soc, la versión de Android, el modelo del dispositivo, el fabricante del dispositivo, el número de serie de ADB, el estado de desbloqueo del OEM, la huella digital de la compilación del dispositivo Android, la dirección MAC de WiFi, etc.

        • adb shell getprop
        • adb shell getprop ro.build.version.sdk
        • adb shell getprop ro.build.version.security_patch
        • .
        • adb shell getprop ro.board.platform
        • adb shell getprop ro.build.version.release
        • adb shell getprop ro.vendor.product.model
        • adb shell getprop ro.product.manufacturer
        • adb shell getprop ro.serialno
        • adb shell getprop ro.oem_unlock_supported
        • adb shell getprop ro.bootimage.build.fingerprint
        • adb shell getprop ro.boot.wifimacaddr
          • adb -s shell getprop

            Si quieres comprobar la configuración completa, servicios en ejecución e información sobre tu teléfono o tableta Android, puedes utilizar el comando anterior. En primer lugar, ejecuta el comando adb devices y copia el valor alfanumérico del ID de tu dispositivo de la salida.

        PS C:\Users\Technastic\Desktop> adb devices List of devices attached RZ8M810BARJ device

        A continuación, ejecuta el siguiente comando. No olvides sustituir el ID del dispositivo resaltado en azul por el ID de tu dispositivo.

        adb -s RZ8M810BARJ shell getprop

        adb shell cat /proc/cpuinfo

        Usa el comando anterior para obtener información completa sobre la CPU de tu teléfono o tablet.

        Obtén las propiedades de un dispositivo Android

        Ejecutando el siguiente comando, podrás ver las propiedades del sistema.

        adb shell getprop | grep -e 'model' -e 'version.sdk' -e 'manufacturer' -e 'hardware' -e 'platform' -e 'revision' -e 'serialno' -e 'product.name' -e 'brand'

        adb shell cd

        Cambia el directorio de ADB shell usando ‘cd <directorio>’

        adb shell

        Luego ejecuta el siguiente comando:

        cd /system

        adb shell rm

        Este comando te permite eliminar fácilmente un archivo o carpeta del almacenamiento de tu dispositivo Android. Inicia la ventana de comandos, ejecuta el comando ‘adb shell’ y luego prueba el siguiente comando con los parámetros ‘-f’ (para eliminar un archivo) y ‘-d’ (para eliminar un directorio).

        rm -f /sdcard/com.whatsapp.apk
        rm -d /sdcard/WhatsApp

        Nota: En lugar de ‘rm-d’, también puedes usar ‘rmdir’.

        adb shell mkdir

        Además de borrar un directorio o carpeta existente, ADB Shell también te permite crear un nuevo directorio o subdirectorio. No sólo eso, puedes establecer permisos para la carpeta recién creada.

        mkdir /sdcard/NewFolder mkdir -p /sdcard/NewFolder/NewFolder1 mkdir -m 644 /sdcard/NewFolder

        adb shell cp

        ‘cp’ significa ‘copiar’. Puedes utilizar este comando para copiar archivos y directorios ubicados en tu dispositivo Android. Una vez más, es necesario comenzar con el comando ‘adb shell’ primero.

        Para copiar archivos y luego pegarlos, mencionando las ubicaciones de origen y destino como se muestra a continuación:

        cp /sdcard/OPWallpaperResources.apk /sdcard/DCIM/Camera

        adb shell mv

        ‘mv’ significa ‘mover’. Este comando se puede utilizar para mover un archivo almacenado en su dispositivo desde una ubicación de origen a una ubicación de destino.

        mv /sdcard/livewallpapers.apk /system/app

        El siguiente comando le permitirá mover un archivo con un nuevo nombre.

        mv /sdcard/livewallpapers.apk /sdcard/Wallpapers

        adb shell top

        Para mostrar la lista de los procesos principales de la CPU en un teléfono o tableta Android, puede utilizar el comando anterior. El monitor de procesos de la CPU se puede detener usando Ctrl+C.

        adb shell ip

        Averigua la dirección IP WiFi de un teléfono o tableta Android.

        ip -f inet addr show wlan0

        adb shell netstat

        Muestra las estadísticas de red de los teléfonos Android.

        adb shell netstat

        Comandos KeyEvent

        Los dispositivos Android admiten comandos KeyEvent que pueden permitirte realizar ciertas acciones que requieren que pulses un botón de hardware o que toques una aplicación u opción de la interfaz de usuario. Puede controlar su teléfono o tableta Android simplemente utilizando estos comandos KeyEvent. Estos comandos podrían ser útiles si las teclas de hardware de su dispositivo no funcionan correctamente debido a algún daño.

        • Turn Android device ON or OFF: adb shell input keyevent 2
        • Press Home button: adb shell input keyevent 3
        • Press Back button: adb shell input keyevent 4 
        • Press Call button: adb shell input keyevent 5 
        • End a call: adb shell input keyevent 6 
        • Turn ON the camera: adb shell input keyevent 27 
        • Open wen browser: adb shell input keyevent 64 
        • Press the Enter key: adb shell input keyevent 66 
        • Press Backspace button: adb shell input keyevent 67 
        • Open Contacts app: adb shell input keyevent 207 
        • Decrease display brightness: adb shell input keyevent 220 
        • Increase Display brightness: adb shell input keyevent 221 
        • Cut text: adb shell input keyevent 277
        • Copy text: adb shell input keyevent 278
        • Paste text: adb shell input keyevent 279
          • Puedes obtener más información sobre los comandos KeyEvent en el portal de desarrolladores de Google.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *