使用“read”读取密码时如何回显星号(*)?

2024-03-13

如果我想回显,我需要对 Bash 中的代码做什么*当用户在 using 中键入某些内容时,用 s 代替密码字符(甚至完全隐藏这些字符)read?


As 马克·鲁沙科夫指出,read -s将抑制在提示符下键入的字符的回显。您可以利用该功能作为此脚本的一部分来为每个键入的字符回显星号:

#!/bin/bash
unset password
prompt="Enter Password:"
while IFS= read -p "$prompt" -r -s -n 1 char
do
    if [[ $char == $'\0' ]]
    then
        break
    fi
    prompt='*'
    password+="$char"
done
echo
echo "Done. Password=$password"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用“read”读取密码时如何回显星号(*)? 的相关文章

  • awk 返回两个变量

    现在这就是我正在做的事情 ret ls la awk print 3 9 usr echo ret awk print 1 fil echo ret awk print 2 问题是我没有运行ls我正在运行一个需要时间的命令 因此您可以理解其
  • shell解析json并循环输出组合变量

    杰斯克喜欢我之前的话题 https stackoverflow com questions 74063588 shell parsing json contains spaces in string 我知道如何解析带有空格的简单 json
  • 如何重命名 bash 函数?

    我正在围绕另一个定义 bash 函数的软件包开发一些方便的包装器 我想用我自己的同名函数替换他们的 bash 函数 同时仍然能够从我的函数中运行他们的函数 换句话说 我需要重命名它们的函数 或者为其创建某种持久别名 当我创建同名函数时 该别
  • 运行 shell 命令并将输出发送到文件?

    我需要能够通过 php 脚本修改我的 openvpn 身份验证文件 我已将我的 http 用户设置为免通 sudoer 因为这台机器仅在我的家庭网络中可用 我目前有以下命令 echo shell exec sudo echo usernam
  • 如何不覆盖 Helm 模板中随机生成的秘密

    我想在 Helm 模板中生成密码 这很容易使用randAlphaNum功能 但是 当版本升级时 密码将会更改 有没有办法检查密码是否先前生成 然后使用现有值 像这样的事情 apiVersion v1 kind Secret metadata
  • Grep 递归和计数

    需要在具有大量子目录的目录中搜索文件内的字符串 我在用着 grep c r string here 我怎样才能找到总数量 如何仅输出至少具有一个实例的文件 使用 Bash 的进程替换 这给出了我认为是您想要的输出 如果不是 请澄清问题 gr
  • Bash 字符串之间的比较 - 相等但不相等

    我只想在 Bash 中的两个字符串之间进行非常简单的比较 stat curl Is url head n 1 echo stat if stat HTTP 1 1 200 OK then echo symbol is OK echo sta
  • Docker exec linux 终端创建别名

    我有一个正在运行且独立的容器 我想在附加到该容器之前创建一个命令别名 当我连接到容器并输入 alias bar foo 创建别名 并可以通过以下方式检查 alias command 但如果我想做同样的事情码头执行者命令即这样 docker
  • 带有二进制数据的 Bash echo 命令?

    有人可以解释一下为什么这个脚本有时只返回十六进制字符串表示形式的 15 个字节吗 for i in 1 10 do API IV openssl rand 16 API IV HEX echo n API IV od vt x1 w16 a
  • 将变量插入 sh 脚本命令[重复]

    这个问题在这里已经有答案了 bin sh f set proj dir OutputDir for projname in lib proj1 proj2 do mv scripts projname BYTECODE proj dir s
  • 独特的 Linux 文件名,可按时间排序

    以前我用的是uuidgen http man7 org linux man pages man1 uuidgen 1 html创建唯一的文件名 然后我需要通过 bash 脚本按日期 时间迭代该文件名 从那时起 我发现简单地通过 ls l 循
  • 如何在 bash_profile 文件中添加导出语句?

    我正在尝试了解是否必须添加导出语句来在 bash profile 文件中设置变量 我该怎么做呢 例如 如果我必须添加 export AX name 那么我应该将其简单地写在文件末尾还是我还需要编写其他内容 简单写一下export AS na
  • 在 Django shell 会话期间获取 SQL 查询计数

    有没有办法打印 Django ORM 在 Django shell 会话期间执行的原始 SQL 查询的数量 Django 调试工具栏已经提供了此类信息 例如 5 QUERIES in 5 83MS但如何从 shell 中获取它并不明显 您可
  • 如何在 Bash 中删除字符串的第一部分?

    该代码将给出第一部分 但是如何删除它并获取没有第一部分的整个字符串 echo first second third etc cut d f1 你应该看看info cut 这将解释什么f1 means 实际上我们只需要第二个字段之后的字段 f
  • 通过 shell 脚本查找“非”硬链接的文件

    给定一个目录 如何找到其中的所有文件 以及任何子目录 not硬链接文件 或者更具体地说 这不是具有多个引用的硬链接文件 基本上我想扫描一个文件夹并返回一个列表unique该目录中的文件 包括目录和符号链接 不是它们的目标 如果可能的话 最好
  • 命令中的 Bash 变量扩展[重复]

    这个问题在这里已经有答案了 DATE 1 week ago date date DATE 不起作用 我怎样才能让它发挥作用 我可以做 DATE CMD date date DATE eval DATE CMD 但我不想将整个命令存储在变量中
  • 如何将命令输出作为多个参数传递给另一个命令

    我想将命令的每个输出作为多个参数传递给第二个命令 例如 grep pattern input returns file1 file2 file3 我想复制这些输出 例如 cp file1 file1 bac cp file2 file2 b
  • 通过 Node.js 运行 bash 脚本 - 非法选项 -o pipelinefail

    我正在尝试使用 Node js 执行 bash 脚本child process exec 然而它在文件的第二行爆炸 usr bin env bash set eo pipefail TRACE set x echo we are here
  • rsync --include 选项不排除其他文件

    尝试rsync某些扩展名 sh 的文件 但下面的bash脚本仍然传输所有文件 为什么 from home xxx rsync zvr include sh from root host home tmp 您需要添加 exclude all
  • 如何使用 bash 脚本通过 tar 备份文件系统?

    我想备份我的 ubuntu 文件系统 我写了这个小脚本 这是非常基本的 但这是我第一次尝试 我害怕犯错误 由于需要几个小时才能完成才能看到结果 因此我认为最好向经验丰富的程序员询问我是否做错了什么 我特别感兴趣 gt 会记录输出mv或者它也

随机推荐

  • c char 指针问题

    如果我们声明char p hello 那么由于它被写入数据部分 我们无法修改p指向的内容 但我们可以修改指针本身 但我在 C Traps and Pitfalls 中找到了这个例子 安德鲁 科尼格 AT T贝尔实验室 默里山 新泽西州 07
  • 获取 Instagram 上用户的性别

    我只是想知道是否有办法在 Instagram 上获取用户的性别 我浏览了 Instagram 的 api 从 users userId 获取的用户信息不包含性别信息 感谢您的帮助 NO 目前还没有办法从API获取instagram用户的性别
  • UTF-8 文本(印地语)未显示在浏览器窗口或 Eclipse 控制台上

    我必须在浏览器屏幕上显示印地语 或任何区域语言 的文本 我将从数据库中获取此文本 为此 我从以下几个方面开始 String escapedStr u0905 u092d u0940 u0938 u092e u092f u0939 u0948
  • 在Python中找到分数列表的最小公分母

    我有一个分数列表 from fractions import Fraction fractions list Fraction 3 14 Fraction 1 7 Fraction 9 14 输出应该是一个列表 其中包含每个分数的分子 最后
  • React - 将所有数据从 json 加载到组件中

    我正在使用 React 并尝试将数据从本地 json 文件加载到我的组件中 我试图打印所有信息 包括名称 值对中的 名称 不仅仅是值 使其看起来像一个表单 我正在寻找最好的方法来做到这一点 我需要解析吗 我需要使用地图功能吗 我是 Reac
  • 在 PHP 中获取数组的最后一个元素而不更改数组? [复制]

    这个问题在这里已经有答案了 array pop 将其从数组中删除 end 改变内部指针 唯一的方法真的像这样 my array array pop array keys my array 这有效 list end array slice a
  • 如何检查 window.external 上是否存在函数

    如何检查 window external 上是否存在函数 我正在从 javascript 调用 C 代码 并且想检查 C 对象中是否存在方法 我找到了路 只需使用 in 运算符 如下所示 if FunctionName in window
  • 元组的串联

    普通文本 我在 python 3 2 1 上编码时遇到一些问题 实际上我正在参加有关 python 2 5 的在线讲座 这是代码 x 100 divisors for i in range 1 x if x i 0 divisors div
  • 在 bash shell 中打印星号(“*”)

    a 5 echo aMin bash etc init d ckDskCheck sh 当我尝试运行以下代码时 它会正确显示 5 bash etc init d ckDskCheck sh 但是 当我尝试使用以下代码将结果分配给变量并将其打
  • 快速使用未解析的标识符“UIApplicationStateInactive”

    在我处理推送通知的 Swift 代码中 我有这一行 if application applicationState UIApplicationStateInactive application applicationState UIAppl
  • 如何在sqlite android中插入多行

    我有一种方法可以将值插入到sqlite在一个班级里 在主要活动中 我正在解析 json 值并尝试将这些值插入到sqlite在循环中 因为我必须插入不止一行 但只有一行被添加到数据库中 添加多行的方法如下 public void addSes
  • 如何访问SetDefaultContentHeaders中的底层对象?

    我有一个 Web api 我在其中返回一个对象 当我使用接受标头 image jpg 时 我想要该对象的图像表示形式 但我想根据我返回的对象设置文件名 我已经实施了一个BufferedMediaTypeFormatter并认为我应该在方法中
  • 如何在 Windows 中使用本地路径访问 Subversion 存储库?

    我安装了 CollabNet Subversion 服务器和客户端 运行附带的 Apache 从服务器上的命令行 我可以使用类似的路径轻松访问存储库 http server port svn repository 但我无法使用它在磁盘上的实
  • 类似 git 界面的最佳方法

    我正在编写一个小型命令行待办事项应用程序 它具有类似于 git 的通用界面 它可以执行多项任务 add list complete 所有这些都应该可以通过todo
  • docker容器主机名顺序号

    在 docker swarm 中存在副本 规模的情况下 是否有任何选项可以让主机名 容器名具有一些序列号 version 3 services serA image someimage1 hostname serA serB image s
  • 在 C# 中将字符串存储为 UTF8

    我在 C 中进行了大量的字符串操作 并且确实需要将字符串每个字符存储一个字节 这是因为我需要在内存中同时存储千兆字节的文本 这会导致内存不足的问题 我确信该文本永远不会包含非 ASCII 字符 因此就我的目的而言 System String
  • 一个类可以从类本身内部取消吗?

    例如 此代码有效吗 class abc int x y abc int x int y this x x this y y while true update public void update x y if y 0 this null
  • Python的seek函数是如何工作的?

    如果我有一些类似文件的对象并执行以下操作 F open abc r loc F tell F seek loc 10 寻求有什么作用 是从文件开头开始读取loc 10字节 或者它是否足够聪明 只备份 10 个字节 它是特定于操作系统和 li
  • 用 AJAX 调用替换多少内容就太多了?

    我在尝试进行 AJAX 开发时遇到了一个常见问题 在可能的情况下 我喜欢尝试只更新现有布局中的数据 而不是布局本身 例如 采用下面的 div div Here is some content div 我会得到更新的值content 5从服务
  • 使用“read”读取密码时如何回显星号(*)?

    如果我想回显 我需要对 Bash 中的代码做什么 当用户在 using 中键入某些内容时 用 s 代替密码字符 甚至完全隐藏这些字符 read As 马克 鲁沙科夫指出 read s将抑制在提示符下键入的字符的回显 您可以利用该功能作为此脚