Suppose that I've got the following script called test.sh:
#! /bin/sh -
printf '%s\n' "${1:?empty or missing argument}"
When run without any command-line arguments it behaves like this:
$ ./test.sh
./test.sh: 2: ./test.sh: 1: empty or missing argument
Question: Is it possible to change the "./test.sh: 2:" part of the error message?