Creo que es mejor que defina un alias para rm, por lo que cada vez que ejecute rm, no será rm en sí mismo sino su alias.
En este alias puedes analizar todo.
alias rm='/my/path/myrm.sh'
Y este script puede tener todos los parámetros de análisis que desee.
Este alias debe colocarse en .bashrc / .bash_profile, o incluso en / etc / profile si desea que se aplique a todos los usuarios.
Editar
Siguiendo los comentarios a continuación, agregué un contenedor que deshabilita * interpretado como una lista de todos los archivos y se convierte en una cadena.
alias rm='set -f; /bin/sh /home/me/test/rm.sh'
El script podría comenzar así:
#!/bin/sh
if echo "$2" | grep '*' > /dev/null; then
echo "asterisk!"
else
echo "hi this is $var1 and $var2 and $var3"
fi
Prueba:
$ rm a * b
asterisk!