Good catch, I have ever found this issue during the testing, the shell parses it firstly, but I want to cover all of specific characters, in addition, it has not any help, although I tried to use escape character for specific characters, maybe, as you suggested, I should delete some character such as '!'.