'We want to get the command and the args with ! splitting.
but don\'t forget to protect against the \! to do not split them'

def get_command_and_args(self):

    p_call = self.call.replace('\\!', '___PROTECT_EXCLAMATION___')
    tab = p_call.split('!')
    self.command = tab[0]
    self.args = [s.replace('___PROTECT_EXCLAMATION___', '!') for s in tab[1:]]
