在rpm-package安装期间从%post-Script中的活动tty读取

时间:2016-04-13 14:42:14

标签: bash tty

我已经构建了自己的rpm-packages。安装后,我需要用户通过键盘输入获得一些信息,所以我创建了一个后脚本,如果我从bash启动它就能正常工作。

在第一步中,脚本会询问您的值是否正确。如果按Nn,则要求输入新的Nn。这是一个例子:

while [[ ! ($REPLY =~ ^[NnJjYy]$) ]]
do
    read -p "This is just an example, pleaser answer with NnJjYy only" -n 1 -r < $(tty)
    if [[ $REPLY =~ ^[Nn]$ ]] 
    then 
        printf "\nValue=" 
        read HOST < $(tty)
    fi
    echo
done

如果我直接运行它,这部分工作正常。如果我把它放在%post - 我的SPEC-File的一部分,它将作为一个无限循环运行,其中errormsg“Mehrdeutige Umlenkung”应该用英语表示“amibigious redirect”。

我认为这个问题是由read命令的“$(tty)”引起的,因为如果我把它更改为我的活动tty(例如/ dev / pts / 0)它正在工作,但我想拥有它普遍。

你有什么想法我能做到这一点吗?

0 个答案:

没有答案