我是Whiptail的新手。
我想创建一个程序,允许用户显示某些内容的信息,例如网卡。
我希望菜单是动态的,例如: 我的计算机系统此刻插入了2个网卡,因此菜单将为用户提供2个选项:
eth0
lo
但是,如果进行了更改,例如添加了另一个名为lo1的网卡,程序将更新更改并允许用户拥有最新的选择集:
eth0
lo
lo1
此刻我正在这里。指导我们..
#!/bin/bash
clear
ifconfig -a | sed -n 's/^\([^ ]\+\).*/\1/p' > somefile
array=($(<somefile))
whiptail --title Networking --menu "select your choice" 16 78 5 "${array[@]}"
此致
盐酸
答案 0 :(得分:1)
我假设问题是你需要重复的名字对才能获得鞭尾,你不确定如何从你的名单到达那里?
在这种情况下,这样的事情可能会更好:
read -ra array <<<$(ifconfig -a | awk '!/^ / && NF {print $1; print $1}')
whiptail --title Networking --menu "select your choice" 16 78 5 "${array[@]}"
阅读this page了解您要使用read -a
构造的原因。