#!/bin/sh
# whichhead
# =========
# USAGE: whichhead PROGRAM [OPTIONS]
#
# Print the first lines of a program
help_msg() {
cat <<-EOF
Print the first 10 lines from a program
Usage: whichhead PROGRAM [OPTIONS]
Options:
-n N, --lines=N: print the first N lines
-h, --help: print this message
EOF
exit 1
}
err_msg() {
(>&2 echo "$1")
exit 1
}
for i in "$@"; do
case $i in
-h|--help) help_msg;;
esac
done
if [ "$#" -lt 1 ]; then
err_msg "Usage: whichhead PROGRAM [OPTIONS]"
fi
BIN=$(which "$1" 2>/dev/null)
if [ -z "$BIN" ]; then
err_msg "No program '${1}'"
fi
OPTS="${@:2}"
head "$BIN" ${OPTS[@]}