【问题标题】:Collect input with Linux Dialogs使用 Linux 对话框收集输入
【发布时间】:2016-01-20 18:04:42
【问题描述】:

我发现了对话框,所以我今天要更新菜单。到目前为止,一切顺利。

我来到了一个我需要收集用户输入的地方。

我有

dialog --title " INPUT FILE NAME: " --inputbox "$(ls)" 30 40 2> answer

这会将用户输入发送到名为“answer”的文件

我试过了

dialog --title " INPUT FILE NAME: " --inputbox "$(ls)" 30 40 2> $answer

但这似乎没有任何作用。

我试过了

answer=$(dialog --title " INPUT FILE NAME: " --inputbox "$(ls)" 30 40 2) 

但是有一些错误。

【问题讨论】:

    标签: linux dialog redhat centos5


    【解决方案1】:

    完成

    dialog --title " INPUT FILE NAME: " --inputbox "$(ls )" 30 40 2>answer
    ans=$(cat answer)
    rm answer
    

    【讨论】:

      【解决方案2】:

      manual page(用于对话)讲述了这个故事:

      一些小部件,例如清单,会将文本写入对话框的输出。 通常这是标准错误,但有更改选项 这个:“--output-fd”、“--stderr”和“--stdout”。如果不写任何文本 取消按钮(或 ESC)被按下; 对话框立即退出。

      对话框默认使用标准错误作为其输出的原因是它使用了curses/ncurses 库,该库通常将 输出(用于屏幕更新)打印到标准输出。要更改对话框的行为(并写入标准输出),请使用“--stdout”选项。

      有趣的是(尽管由于它使脚本编写复杂化,这似乎是一个显而易见的问题需要解决),Xdialog 程序首先实现了这个选项;添加到对话框中似乎是一件好事(请参阅changelog)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-02-27
        • 2013-11-05
        相关资源
        最近更新 更多