/ $ Terminal_

by Ricardo “Rudxain” Fernández Serrata

Version 59 (November 29, 2022)

Download (305 downloads)

An Android Command-Line-Interface Shell Terminal-Emulator. Uses Automate's Web Dialog as HTML terminal-window and communicates with the ACLI Shell (MKSH, nowadays). Made to be as similar as possible to an ADB Interactive Shell in a terminal window.

It has a prompt that prints Exit Code (only if it's truthy), Working Directory, and type of user. If WD contains a substring equal to Home, it will be shown as "~" (like most Linux terminals). The flow auto-detects ⚫Dark🌙(night) and ⚪Light☀️(day) modes and sets theme accordingly.

The $HOME environment variable is set, but it's read-only . If you set $HOME to something else, the change will only last during the execution of the cmd line. When a new session starts, $HOME will be reset to {home}.

Input "su" to enter root mode. Likewise, use "us" to exit SuperUser mode. SU privilege is optional, only required for SU mode.

If someone can, please make a crossover between this flow and llamalab.com/automate/community/flows/27224 . The result would be the ultimate Automate Terminal.

MirBSD Korn Shell Manual: www.mirbsd.org/htman/i386/man1/mksh.htm

List of installed executable files and symlink binaries for each Android version: chromium.googlesource.com/aosp/platform/system/core/+/refs/heads/upstream/shell_and_utilities


If a user grants more privileges to Automate, they will be allowed to do more things (even if the flow doesn't request those privileges). If the user grants storage access, Automate (and this terminal) will be allowed to read/write contents of user storage via shell.

Each time AM sends text to the shell, a new shell session starts, that's why the shell doesn't "remember" previous cmds (except "cd", because of this terminal), except when used inside scripts AND/OR 1-liner multi-cmds.

"sh" cmd can be used to run script files even if execution permission is disabled, and exit interactive shell during the execution of the script.

Terminal-side support for aliases is complicated and would require premium. I've decided to not add alias cmd.

" Why isn't `color-scheme` set to "light dark"? Or why not use `@prefers-color-scheme` media query?".
Read this: https://groups.google.com/g/automate-user/c/1jGBFIMQiwM . TLDR: I want to support legacy Android versions.

Known bug: arbitrary HTML injection caused by unescaped `hist` var

4.5 average rating from 4 reviews

5 stars
4 stars
3 stars
2 stars
1 star

Rate and review within the app in the Community section.