diff --git a/bin/sbang b/bin/sbang
index 6ceff42e660cddbb846f6e53da6f66419a8d4f58..5c9ad37acd613ac1c13ed8b2c0186c3801915c1d 100755
--- a/bin/sbang
+++ b/bin/sbang
@@ -103,10 +103,10 @@ interpreter_f="${interpreter_v[0]}"
 
 # Invoke any interpreter found, or raise an error if none was found.
 if [[ -n "$interpreter_f" ]]; then
-    if [[ "${interpreter_f##*/}" = "perl" ]]; then
-        exec $interpreter_v -x "$@"
+    if [[ "${interpreter_f##*/}" = "perl"* ]]; then
+        exec $interpreter -x "$@"
     else
-        exec $interpreter_v "$@"
+        exec $interpreter "$@"
     fi
 else
     echo "error: sbang found no interpreter in $script"