Хочется при начале работы скрипта проверить, первый параметр не пуст ли и действительно ли это имя файла. Делаю так
if [ -z $1 -o ! -e $1 ]; then echo "..." exit 1 fi
Но если параметр пуст он зачем-то еще проверяет второе условие. Как это предотвратить?