如何逃脱! 在密码?

如何避免密码中的惊叹号:

$ mysql -umyuser -pone_@&!two -bash: !two: event not found 

尝试明显的反斜杠没有帮助:

 $ mysql -umyuser -pone_@&\!two [1] 22242 -bash: !two: command not found [email protected] [~]# ERROR 1045 (28000): Access denied for user 'myuser'@'localhost' (using password: YES) 

我所有的谷歌searchbuild议反斜杠将有所帮助,但事实并非如此。 没有办法使用引用这个问题的build议。 该行将用于.bashrc别名。 别担心,这里显示的用户名和密码只是示例,并没有用于制作!

围绕密码使用单引号,如下所示: -p'one_@&!two'

把它放在一个别名,你会做这样的事情:

alias runmysql='mysql -umyuser -p'\''one_@&!two'\'''

 -bash: !two: command not found 

你还需要逃避&angular色:

 $ mysql -umyuser -pone_@\&\!two 

如果你从来没有用过! 历史function,简单地禁用它们(在你的bashrc中set +H )可能会更方便。