-L adalah tes untuk file yang ada dan juga merupakan tautan simbolik
Jika Anda tidak ingin menguji apakah file tersebut merupakan tautan simbolik, tetapi cukup uji untuk melihat apakah file tersebut ada terlepas dari jenisnya (file, direktori, soket, dll.) Kemudian gunakan -e
Jadi jika file benar-benar file dan bukan hanya tautan simbolis Anda dapat melakukan semua tes ini dan mendapatkan status keluar yang nilainya menunjukkan kondisi kesalahan.
if [ ! \( -e "${file}" \) ]
then
echo "%ERROR: file ${file} does not exist!" >&2
exit 1
elif [ ! \( -f "${file}" \) ]
then
echo "%ERROR: ${file} is not a file!" >&2
exit 2
elif [ ! \( -r "${file}" \) ]
then
echo "%ERROR: file ${file} is not readable!" >&2
exit 3
elif [ ! \( -s "${file}" \) ]
then
echo "%ERROR: file ${file} is empty!" >&2
exit 4
fi