macOS
brew install execlinelocal Homebrew formula metadata
sudo port install execlineMacPorts ports tree · lang/execline/Portfile · source: api.github.com
brew
Interpreter-less scripting language. Version 2.9.8.1 via Homebrew; verified 2026-06-22.
install
brew install execlinelocal Homebrew formula metadata
sudo port install execlineMacPorts ports tree · lang/execline/Portfile · source: api.github.com
sudo apk add execlineAlpine Linux edge package indexes · execline · source: dl-cdn.alpinelinux.org
sudo apt install execlineDebian stable package indexes · execline · source: deb.debian.org
overview
Interpreter-less scripting language
history
execline is a small non-interactive scripting language from skarnet.org, designed as a predictable shell alternative for process supervision, startup scripts, and command chaining.
The official page describes execline as a scripting language like sh, but with substantially different syntax. Its design goal is predictable grammar and avoidance of shell-style security issues while retaining shell-level power through conditionals, loops, option handling, globbing, environment management, and process-control commands.
The public git tag list shows the 2.x series beginning with v2.0.0.0 about twelve years before June 2026. The upgrade notes record a major build-system change in 2.0.0.0 and continuing incremental additions through 2.9.x, including envfile, posix-cd, posix-umask, eltest, multicall support, and macOS shared-library support.
execline is part of the wider skarnet.org software ecosystem and depends on skalibs. It is packaged across Unix-like distributions and package managers, including Homebrew, Debian, Ubuntu, Alpine, MacPorts, and others in the supplied package facts.
Its adoption is strongest among users of s6, runit-like supervision ideas, and minimal Unix service-management stacks, where explicit process state, file descriptor handling, and environment manipulation matter more than interactive shell convenience.
Users write execlineb scripts or compose the provided commands directly. The command set covers parser/launcher behavior, process state control, environment files, fd operations, redirection, pipelines, foreground/background blocks, conditionals, loops, positional parameters, and option parsing.
The homepage includes example .profile replacement scripts and documents each command with consistent exit behavior: temporary errors exit 111, permanent misuse-style errors exit 100, failed exec lookup exits 127, and other exec failures exit 126.
execline is package-nerd significant because it decomposes shell behavior into many small binaries with explicit process semantics. It fits the skarnet tradition of small composable tools for supervision and init-adjacent systems.
It is also a good example of a package where the binary list is the product: installing execline adds a vocabulary of tiny command primitives rather than one large interactive shell.
security posture
No matching local secret-handling manifest was found for execline. Nucleus package metadata is still published here so future coverage has a stable package URL.
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
background | cli | global executable | |
backtick | cli | global executable | |
case | cli | global executable | |
cd | cli | global executable | |
dollarat | cli | global executable | |
elgetopt | cli | global executable | |
elgetpositionals | cli | global executable | |
elglob | cli | global executable | |
eltest | cli | global executable | |
emptyenv | cli | global executable | |
envfile | cli | global executable | |
exec | cli | global executable | |
execline-cd | cli | global executable | |
execline-umask | cli | global executable | |
execlineb | cli | global executable | |
exit | cli | global executable | |
export | cli | global executable | |
export-array | cli | global executable | |
fdblock | cli | global executable | |
fdclose | cli | global executable | |
fdmove | cli | global executable | |
fdreserve | cli | global executable | |
fdswap | cli | global executable | |
forbacktickx | cli | global executable | |
foreground | cli | global executable | |
forstdin | cli | global executable | |
forx | cli | global executable | |
getcwd | cli | global executable | |
getpid | cli | global executable | |
heredoc | cli | global executable | |
homeof | cli | global executable | |
if | cli | global executable | |
ifelse | cli | global executable | |
ifte | cli | global executable | |
ifthenelse | cli | global executable | |
importas | cli | global executable | |
loopwhilex | cli | global executable | |
multidefine | cli | global executable | |
multisubstitute | cli | global executable | |
pipeline | cli | global executable | |
piperw | cli | global executable | |
posix-cd | cli | global executable | |
posix-umask | cli | global executable | |
redirfd | cli | global executable | |
runblock | cli | global executable | |
shift | cli | global executable | |
trap | cli | global executable | |
tryexec | cli | global executable | |
umask | cli | global executable | |
unexport | cli | global executable | |
wait | cli | global executable | |
withstdinas | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://skarnet.org/software/execline/
install metadata
| Package key | brew:execline |
|---|---|
| Version | 2.9.8.1 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/execline |
| Homepage | https://skarnet.org/software/execline/ |
| Repository | https://git.skarnet.org/cgi-bin/cgit.cgi/execline |
| Upstream docs | https://skarnet.org/software/execline |
| License | ISC |
| Source archive | https://skarnet.org/software/execline/execline-2.9.8.1.tar.gz |
| Last updated | 2026-06-22T14:03:17-07:00 |
| Pulse | updated |
| Dependencies | skalibs |
| Build dependencies | pkgconf |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | execline |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
execline 2.9.6.1-1
small and non-interactive scripting language
https://skarnet.org/software/execline/
sudo apt install execlineexecline-doc 2.9.6.1-1
small and non-interactive scripting language (documentation)
https://skarnet.org/software/execline/
sudo apt install execline-doclibexecline-dev 2.9.6.1-1
small and non-interactive scripting language (development files)
https://skarnet.org/software/execline/
sudo apt install libexecline-devlibexecline2.9 2.9.6.1-1
small and non-interactive scripting language (shared library)
https://skarnet.org/software/execline/
sudo apt install libexecline2.9execline 2.9.4.0-1build2
small and non-interactive scripting language
https://skarnet.org/software/execline/
sudo apt install execlineexecline-doc 2.9.4.0-1build2
small and non-interactive scripting language (documentation)
https://skarnet.org/software/execline/
sudo apt install execline-doclibexecline-dev 2.9.4.0-1build2
small and non-interactive scripting language (development files)
https://skarnet.org/software/execline/
sudo apt install libexecline-devlibexecline2.9 2.9.4.0-1build2
small and non-interactive scripting language (shared library)
https://skarnet.org/software/execline/
sudo apt install libexecline2.9execline 2.9.9.1-r0
A small scripting language, to be used in place of a shell in non-interactive scripts.
https://skarnet.org/software/execline/
sudo apk add execlineexecline-dev 2.9.9.1-r0
A small scripting language, to be used in place of a shell in non-interactive scripts. (development files)
https://skarnet.org/software/execline/
sudo apk add execline-devexecline-doc 2.9.9.1-r0
A small scripting language, to be used in place of a shell in non-interactive scripts. (documentation)
https://skarnet.org/software/execline/
sudo apk add execline-docexecline-libs 2.9.9.1-r0
A small scripting language, to be used in place of a shell in non-interactive scripts. (libraries)
https://skarnet.org/software/execline/
sudo apk add execline-libsexecline-static 2.9.9.1-r0
A small scripting language, to be used in place of a shell in non-interactive scripts. (static library)
https://skarnet.org/software/execline/
sudo apk add execline-staticexecline
sudo port install execlinepython-case-doc 1.5.3+dfsg-5
Python unittest Utilities (documentation)
https://github.com/celery/case
sudo apt install python-case-docpython3-case 1.5.3+dfsg-5
Python unittest Utilities (Python3 version)
https://github.com/celery/case
sudo apt install python3-casesource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.