O kernel interpreta a linha que inicia com #! e a utiliza para executar o script, passando o nome do script; então isso acaba rodando
/bin/rm scriptname
que exclui o script. (Como Stéphane Chazelas aponta , scriptname aqui é suficiente para encontrar o script - se você especificou um caminho relativo ou absoluto, que é passado como está, caso contrário, qualquer caminho encontrado em PATH é prefixado, incluindo possivelmente a sequência de emptry se seu PATH contiver isso e o script estiver no diretório atual. com um script de eco - #!/bin/echo - para ver como isso funciona.)
Como hobbs apontou, isso significa que seu script é na verdade um script rm , não um bash script - o último começaria com #!/bin/bash .
Veja Como os programas são executados para detalhes de como isso funciona no Linux; os comentários nesse artigo dão detalhes para outras plataformas. #! é chamado de shebang, você encontrará muitas informações pesquisando esse termo (graças a Aaron para a sugestão). Como jlp apontou, você também o encontrará chamado de "pound bang" ou "hash bang" ( # é comumente conhecido como "libra" - em países que não usam £ - ou "hash" e ! como "bang"). Wikipedia tem mais informações.