bashreadline(8) System Manager's Manual bashreadline(8)
NAME
bashreadline - Print entered bash commands system wide. Uses Linux
eBPF/bcc.
SYNOPSIS
bashreadline [-h] [-s SHARED]
DESCRIPTION
bashreadline traces the return of the readline() function using up-
robes, to show the bash commands that were entered interactively, sys-
tem wide. The entered command may fail: this is just showing what was
entered.
This program is also a basic example of eBPF/bcc and uprobes.
This makes use of a Linux 4.4 feature (bpf_perf_event_output()); for
kernels older than 4.4, see the version under tools/old, which uses an
older mechanism
Since this uses BPF, only the root user can use this tool.
REQUIREMENTS
CONFIG_BPF and bcc.
OPTIONS
-h Print usage message.
-s Specify the location of libreadline.so shared library when you
failed to run the script directly with error: "Exception: could
not determine address of symbol ´readline´". Default value is
/lib/libreadline.so.
EXAMPLES
Trace bash commands system wide:
# bashreadline
FIELDS
TIME Time of the command (HH:MM:SS).
PID Process ID of the bash shell.
COMMAND
Entered command.
OVERHEAD
As the rate of interactive bash commands is expected to be very low
(<<100/s), the overhead of this program is expected to be negligible.
SOURCE
This is from bcc.
https://github.com/iovisor/bcc
Also look in the bcc distribution for a companion _examples.txt file
containing example usage, output, and commentary for this tool.
OS
Linux
STABILITY
Unstable - in development.
AUTHOR
Brendan Gregg
SEE ALSO
opensnoop(8)
USER COMMANDS 2016-01-28 bashreadline(8)
Generated by dwww version 1.16 on Tue Dec 16 05:46:01 CET 2025.