20 lines
466 B
Bash
20 lines
466 B
Bash
|
|
#!/bin/bash
|
||
|
|
|
||
|
|
set -eu
|
||
|
|
|
||
|
|
args=$(getopt -o "" -l "follow,lines:" -n "$0" -- "$@")
|
||
|
|
eval set -- "${args}"
|
||
|
|
|
||
|
|
follow=""
|
||
|
|
lines=""
|
||
|
|
|
||
|
|
while true; do
|
||
|
|
case "$1" in
|
||
|
|
--follow) follow="--follow --retry --quiet"; shift;; # same as -F. to make it work if file doesn't exist, --quiet to not output file headers, which are no logs
|
||
|
|
--lines) lines="$2"; shift 2;;
|
||
|
|
--) break;;
|
||
|
|
*) echo "Unknown option $1"; exit 1;;
|
||
|
|
esac
|
||
|
|
done
|
||
|
|
|
||
|
|
exec tail ${follow} --lines=${lines} "$@"
|