Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
linux对话框--检查表错误_Linux_Bash_Shell_Scripting - Fatal编程技术网

linux对话框--检查表错误

linux对话框--检查表错误,linux,bash,shell,scripting,Linux,Bash,Shell,Scripting,我正在处理以下linux对话框。我无法理解它的行为。这可以正常工作,即正确显示三个复选框 #!/bin/sh dialog --backtitle "Test" \ --title "Checkbox test " \ --checklist "Choose from following" 0 0 0 \ apple "The apple is green" on \ mango "The mango is golden" on \ pappaya "The pappaya is brown

我正在处理以下linux对话框。我无法理解它的行为。这可以正常工作,即正确显示三个复选框

#!/bin/sh

dialog --backtitle "Test" \
--title "Checkbox test " \
--checklist "Choose from following"  0 0 0 \
apple "The apple is green" on \
mango "The mango is golden" on \
pappaya "The pappaya is brown" on \
2> /tmp/optional.out
OPTIONAL=`cat /tmp/optional.out | \
    sed -e "s/\"//g" -e "s/ /|/g" -e "s/|$//"`
    echo 'optional :'$OPTIONAL
执行之后,我得到如下输出。
可选:苹果|芒果|帕帕亚

但是,我只想向用户显示两个选项。所以我做了如下的改变

#!/bin/sh

dialog --backtitle "Test" \
--title "Checkbox test " \
--checklist "Choose from following"  0 0 0 \
apple "The apple is green" on \
mango "The mango is golden" on \
#pappaya "The pappaya is brown" on \
2> /tmp/optional.out
OPTIONAL=`cat /tmp/optional.out | \
    sed -e "s/\"//g" -e "s/ /|/g" -e "s/|$//"`
    echo 'optional :'$OPTIONAL

但这样做之后,我没有得到任何输出,即
可选:
。为什么呢?我怎样才能使它工作

我现在认为你发表了评论并打破了你的台词。(这在我身上发生过很多次)

你可以试试这个:

#!/bin/sh

dialog --backtitle "Test" \
--title "Checkbox test " \
--checklist "Choose from following"  0 0 0 \
apple "The apple is green" on \
mango "The mango is golden" on \
2> /var/tmp/optional.out
OPTIONAL=`cat /var/tmp/optional.out | \
    sed -e "s/\"//g" -e "s/ /|/g" -e "s/|$//"`
    echo 'optional :'$OPTIONAL

也许是一个太多的零…@l'l'l检查过了。只放两个零,然后检查。没用。@I'L'我也试过了。没用,“没用”。。。这是非常有用的信息;“也许试试别的”…@I'L'I对不起。我所说的“不工作”是指我仍然得到
可选:
输出。另外,/tmp/optional.out仍然为空。