prova cosi':
codice:
#!/bin/bash
while getopts "i:e:" o
do
        case $o in
                i ) i=$OPTARG;;
                e ) e=$OPTARG;;
        esac
done
shift $(($OPTIND - 1))
if [ $# -le 0 ]; then
        echo "devi specificare almeno un file"
        exit
fi
for f in $*;do
        if [ ! -f $f ]; then
                echo "$f non esiste"
                exit
        fi
done
if [ ! -n "$i" ] && [ ! -n "$e" ]; then
        echo "devi specificare -i o -e"
        exit
fi
grep -h "^$i.*$e$" $* |wc -l