test -f não funcionará para vários arquivos expandidos de curingas. Em vez disso, você pode usar uma função de shell com ls redirecionada a zero.
present() {
ls "$@" >/dev/null 2>&1
}
if [ $# -lt 1 ]; then
echo "Please enter the path"
exit
fi
path=$1
if ! present $path/cc*.csv && ! present $path/cc*.rpt && ! present $path/*.xls; then
echo "All required files are not present\n"
fi
Por falar nisso, é bom usar && ? Nesse caso, você recebe not present apenas quando não houver arquivos com o nome cc*.csv ou cc*.rpt ou cc*.xls in $path .