#! /bin/sh -
for file do
if [ -r "$file" ]; then
printf '"%s" is readable\n' "$file"
n=$((n + 1))
printf '"%s" is not readable\n' "$file"
echo "$n out of $# files were readable"
[ -r file ] test whether the
file is readable by the process invoking that
[ command, so by you, the user running that script, typically using the
access() system call.
It doesn't say anything about whether other users may be able to read it. It doesn't attempt to read it either. For instance, it won't be able to detect files that are un-readable because the underlying storage is defective.