gpt4 book ai didi

bash - 有人可以向我解释什么是stty吗?

转载 作者:行者123 更新时间:2023-12-02 20:40:47 24 4
gpt4 key购买 nike

我在Docker中有一个shell脚本。这不是我的,不幸的是,运行它时出现以下错误。但仅适用于Ubuntu 20.04和Docker 19.03。
stty:“标准输入”:设备的ioctl不适当
这里是脚本中第126行的切口。什么使stty echo和stty -echo?为什么脚本在没有docker的系统上运行时不会出现问题?

askNoEcho() {
PROMPT=$1
DEFAULT=$2

stty -echo
ask "$PROMPT" "$DEFAULT"
stty echo
echo ""
}

askNonBlankNoEcho() {
PROMPT=$1
DEFAULT=$2

while true; do
stty -echo
ask "$PROMPT" "$DEFAULT"
stty echo
echo ""
if [[ -n "$response" ]]; then
break
fi
echo "A non-blank answer is required"
done
}

最佳答案

尝试

$ stty echo < ~/tmp/some.file
stty: standard input: Inappropriate ioctl for device
因此, stty期望其标准输入为终端。
因此,如果您在终端上运行
$ stty echo
您将不会收到任何错误。

关于bash - 有人可以向我解释什么是stty吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63964173/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com