shell输入内容时不显示内容

简介

你们都知道当咱们ssh登陆linux服务器的时候输入密码密码是不显示在屏幕上的,一样在咱们写shell脚本的时候在获取用户密码的时候,有时候也但愿不显示密码,这个是怎么作的呢html

实例脚本

#!/bin/bash
echo "请输入密码:"
stty -echo
read password
echo "密码输入完毕"
echo "你的密码是" $password
stty echo

执行效果

[root[@localhost](https://my.oschina.net/u/570656) home]# ./test.sh
请输入密码:
密码输入完毕
你的密码是 123

解释

你们能够看到其实脚本中就是stty -echostty echo发挥了做用linux

解释下stty这个命令shell

这个命令是用来控制命令行相关设置的,用这个命令你能够作到bash

  • 禁止输出大写: stty iuclc
  • 能够输出大写: stty -iuclc
  • 禁止输出小写: stty olcuc
  • 能够输出小写: stty -olcuc

等等服务器

详细能够看ssh

https://wangchujiang.com/linux-command/c/stty.html.net

还有一种方法

若是你是bash的话read命令加上-s参数也能够实现一样的效果,不信那你能够拿下面的脚本试试命令行

#!/bin/bash
echo "请输入密码:"
read -s password
echo "你的密码是" $password

欢迎关注Bboysoul的博客www.bboysoul.com Have Funcode

相关文章
相关标签/搜索