Labs / interactive explorer
Shell Trace
A command line hides a small process graph. Step through a sample pipeline and watch arguments, descriptors, and terminal ownership take shape.
A guided simulation inspired by myShell. The sample commands are not executed, and no local files are accessed.
Sample command
Two processes share one pipe. sort waits for end-of-file before emitting sorted lines.
1 / 5 · Parse
Parse
Separate the unquoted pipeline operators and build each command's arguments. No process has started yet.
- TERMINAL OWNER
- Shell group 4100
- JOB STATE
- Preparing
- EXIT STATUS
- Pending
Commands and processes
STAGE 1 · NOT STARTED
cat
[
"cat",
"file.txt"
]- stdin
- Not wired
- stdout
- Not wired
- process group
- Not assigned
STAGE 2 · NOT STARTED
sort
[
"sort"
]- stdin
- Not wired
- stdout
- Not wired
- process group
- Not assigned
Pipe connections
cat → pipe 1 → sort
Not allocated
shell$ cat file.txt | sort
[parse]
Sample file.txt contains pear, apple, and banana on separate lines. Process IDs, descriptors, and output are illustrative; this explorer does not run a shell.