#!/bin/sh echo "Select file to show" select input in * do ls -l "$input" done
Either switch to bash:
#!/usr/bin/env bash echo "Select file to show" select input in * do ls -l "$input" done
Or write your own menu.
Your script uses a shell feature not supported by the shebang. Either rewrite the script to be portable, or change the shebang to explicitly require a shell like Bash. There is no simple substitution for a
select loop, so either write your own using compatible constructs like
for loops, or switch to a shell that supports them.
ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.