我是新来的。
我想创建一个程序,允许用户显示某些东西的信息,比如网卡。
我希望菜单是动态的,例如:我的计算机系统目前插入了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[@]}"
问候,盐酸
我假设问题是你需要重复的名称对鞭尾,你不确定如何从你的列表到那里?
在这种情况下,这样做可能会更好:
read -ra array <<<$(ifconfig -a | awk '!/^ / && NF {print $1; print $1}')
whiptail --title Networking --menu "select your choice" 16 78 5 "${array[@]}"
请阅读此页,了解为什么要使用read -a
结构。