a-Shell 17+

Local interactive terminal

Nicolas Holzschuch

    • Free



Local iOS terminal, with Python, Lua, JS, clang, TeX, sh and all Unix utilities.
Perfect for programming locally on iPads and iPhones, efficient with Shortcuts.

a-Shell is a complete local terminal emulator, allowing to run most Unix commands on you iOS device. You can transfer files using scp and curl, edit them with vim and ed, process them using grep, awk and sed. You can work with git repositories using lg2.

a-Shell includes Python, Lua, Perl, JavaScript, C, C++ for programming and TeX (texlive 2022, with Tikz and LuaTeX) for text processing.

There are also multiple network utilities: nslookup, ping, whois, ifconfig... Type help for help, help -l to get the full list of commands.

a-Shell can be controlled from Shortcuts: run commands in order, process files in a-Shell, get the results as text or files, transfer files to other apps...

a-shell uses iOS 13+ “multiple windows” ability, so you can run multiple shells at the same time, with different commands, in different directories. You can edit a file in one window with vim and process it in the other with python.

Compile your C or C++ programs to webAssembly using clang or clang++, and execute the resulting binary. A complete webAssembly SDK is included (WASI-libc).

a-Shell is the complete version. If you need a smaller app, and you don't need a C compiler, a TeX engine, or numpy and matplotlib, there is a-Shell mini.

What’s New

Version 1.10.3

- customizable toolbar: type "config -t" and follow instructions
- full emoji support
- autorepeat for external keyboards, compatible with accented characters
- new commands: sha1 and sha256
- dash can be kept running across sessions

Ratings and Reviews

4.5 out of 5
268 Ratings

268 Ratings

RSnake ,

Pretty cool, but missing some features

It would be nice to be able to have a bashrc or something that allows you to control prompts, and a ps and kill functionality and screen, etc…. for batch jobs. But the really odd thing is hitting a button (other than space and enter keys for some reason) won’t repeat the character - that’s super annoying in vim for instance, because it means you have to do some funky things just to move the cursor around at any sort of speed. [EDIT: The developer said there’s a setting to use the cap’s lock as an escape key that if you disable, allows you to get this feature. For those who don’t know you can use control-[ to get an escape char too.] But overall really cool/useful. Even with a lack of wget (not a fan of curl), you can do pip install wget then python -m wget <site> and poof.

Developer Response ,

If you activate "caps-lock as escape" in the App settings, you also get auto-repeat for keys. It's pretty useful for Vim, I agree, but incompatible with multi-char input.

NeoYokel ,

The notable boundary-pusher of local command line functions on iOS/iPadOS

There are now quite a few terminal emulator-esque apps on the App Store, but I've been using a-Shell since it was joined only by Blink (from which it was forked) and iSH. As it was then, a-Shell remains the only one of these with which one can actually accomplish command line tasks *locally* beyond screwing around. I am ultimately not a command line native, and I don't have the basic theory beneath my use of Python scripts, yet I've been able to accomplish startlingly powerful things within this app, thanks in large part to gracious and immediately-available support via the project's Discord server.

If you've found yourself here by way of a Siri Shortcut's requirement, I would encourage you to take the time to investigate the commands said shortcut(s) run - try running them yourself!

sstevi ,

Very cool, but a bit limited?

This is a very VERY cool app. I love the fact that you are able to actually access real phone files and change them, unlike some fake ones I’ve seen out there. It has many of all the Linux commands as well, which is awesome. One thing I am confused is why it doesn’t have the sudo command, and why I “need permission” to access some files. Overall, as a new Linux user, I find this to be VERY cool. If anyone can help with the permission issue, that would be much appreciated.

Developer Response ,

Hi, the permission issue comes from iOS. Each app can only access its own files. It prevents rogue apps from deleting all your files. You can grant permission using pickFolder or the Files app, but it's under your control. I can explain more on Twitter: @a_Shell_iOS.

App Privacy

The developer, Nicolas Holzschuch, indicated that the app’s privacy practices may include handling of data as described below. For more information, see the developer’s privacy policy.

Data Not Collected

The developer does not collect any data from this app.

Privacy practices may vary, for example, based on the features you use or your age. Learn More

More By This Developer

You Might Also Like

Developer Tools
Developer Tools
Developer Tools
Developer Tools
Developer Tools
Developer Tools