userTypeが変更されない理由がわかりません。
確かにdetermineTypeに到達していることはわかっていますが、後でuserTypeを出力しようとしても、値が「bbb」に変更されていません。
userType="aaa"
function determineType {
userType="bbb"
}
function checkUser {
cat users.csv | \
while read userLine; do
if [[ $userLine =~ .*$user.* ]]
then
determineType
echo "1"
fi
done
echo "0"
}