$linuxjunkies
>

interactive shell

also: login shell, TTY shell

A shell session where the user types commands at a prompt and receives immediate feedback, typically used for manual command execution and real-time interaction with the system.

An interactive shell is a command interpreter that displays a prompt, waits for user input, executes commands, and displays output in real-time. It's the primary way users interact directly with a Linux system, allowing them to run programs, navigate the filesystem, and manage files.

When you open a terminal window and see a prompt like $ or user@hostname:~$, you're in an interactive shell. You can type commands like ls, cd /tmp, or grep pattern file.txt and see results immediately. Features like command history (arrow keys), tab completion, and job control are available in interactive shells.

This contrasts with non-interactive shells, which run scripts without a prompt and don't require user input—they simply execute a sequence of commands from a file.

Related terms