GNU/Linux >> Tutoriales Linux >  >> Linux

¿Alguna forma de ejecutar comandos de shell en Android mediante programación?

Bien, esto es exactamente lo que funcionó para mí en caso de que alguien lo necesite en el futuro... :)

Rodear en intentar y atrapar

try {
    Process process = Runtime.getRuntime().exec("top -n 1 -d 1");
    BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream()));
} catch (InterruptedException e) {
    e.printStackTrace();
}

Consulte Log Collector como ejemplo. Aquí está el archivo relevante.

La clave está aquí:

ArrayList<String> commandLine = new ArrayList<String>();
commandLine.add("logcat");//$NON-NLS-1$
[...]

Process process = Runtime.getRuntime().exec(commandLine);
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream()));

Linux
  1. Crear y ejecutar un script de shell en CentOS 8:¿proceso paso a paso para hacerlo?

  2. ¿Cómo canalizar comandos a cualquier terminal?

  3. Manera de ejecutar un servidor Ssh en un dispositivo Android?

  4. Manera de hacer que un script de Shell siempre se ejecute como raíz?

  5. ¿Programación de comandos por inactividad del sistema?

Cómo ejecutar comandos de Linux en segundo plano

Cómo acceder al shell o ejecutar comandos externos desde dentro de Vim

Cómo ejecutar comandos Sudo sin contraseña

Cómo recuperar mediante programación el GID de un proceso en ejecución

¿Daemonizar un proceso en shell?

Ejecute un script de shell como un usuario diferente