编写一个bash脚本时,需要用户输入一个密码,方可继续后续流程,但是又要保证用户输入的密码不会被别人看到,因此排除了通过参数将密码传入脚本的方案
不绕圈子,揭晓答案:设置终端状态为“字符不回显”(如果你了解过termios的话,也一定听说过)
方法就是:
stty -echo #设置输入字符不回显
#此处用read语句接收用户输入的内容
stty echo #取消不回显状态
ps: 谢谢symclark给出的好建议!他的建议是使用read的-s选项直接就可以实现输入内容不回显,不必像我文章中写的那么麻烦。:)
更多有关shell脚本的内容,请参考:http://www.jbxue.com/jb/shell/。