Вы не указывали который оболочка, но принимающий удар (или zsh):
function msg() {
read -p "Task #${1} done. Press any key to continue"
}
и затем Вы просто используете его как
% msg "foobar"
с $0
- $X
Вы получаете доступ к энному параметру, в $*
и $@
Вы находите целую строку. просто проверьте руководство своей оболочки.