You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell中是否有方法关闭用户输入的ECHO回显功能?

PowerShell实现关闭输入回显的方法

PowerShell可以通过多种方案实现Linux下stty -echo的关闭输入回显效果,可根据实际使用场景选择:

1. 临时关闭回显读取敏感输入

这是最常用的场景,适用于读取密码、密钥等敏感信息的需求,使用内置Read-Host命令即可实现,输入过程自动关闭回显,输入完成后自动恢复:

# 输入内容默认不回显,结果存储为安全字符串
$secureInput = Read-Host "请输入敏感内容" -AsSecureString

# 如需将安全字符串转为明文使用,可执行以下转换
$plainText = [System.Net.NetworkCredential]::new("", $secureInput).Password

2. 手动控制全局回显开关

如果需要和stty -echo/stty echo一样,手动控制整个控制台会话的回显状态,可选择以下任意一种方式实现:

方式1:调用.NET 控制台API

  • 关闭输入回显(对应stty -echo)
[System.Console]::Echo = $false
# 可选配置:隐藏光标、设置Ctrl+C作为普通输入处理,避免特殊按键打断流程
[System.Console]::CursorVisible = $false
[System.Console]::TreatControlCAsInput = $true
  • 恢复输入回显(对应stty echo)
[System.Console]::Echo = $true
[System.Console]::CursorVisible = $true
[System.Console]::TreatControlCAsInput = $false

方式2:调用PowerShell主机接口

  • 关闭输入回显
$Host.UI.RawUI.EchoInput = $false
  • 恢复输入回显
$Host.UI.RawUI.EchoInput = $true

注意:手动全局关闭回显后,后续所有控制台输入都不会显示,包括恢复回显的命令也不会回显,操作完成后务必记得执行恢复命令。

内容的提问来源于stack exchange,提问作者Zhiburt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 06:30:04