[英]busybox network configuration script error
您好,我在啟動中有腳本,但是我不明白為什么它在執行時顯示錯誤
#!/bin/sh
# Starting the network interface
PATH="/sbin:/bin:/usr/bin:/usr/sbin"
FILENAME="/etc/ipconf"
count=0
while read LINE
do
ipValues[count]=$(echo $LINE | awk -F'=' '{print $2}')
count=`expr $count + 1`
done < $FILENAME
echo "Setting up IP Address"
ifconfig eth0 up
ifconfig eth0 ${ipValues[0]} netmask ${ipValues[1]}
echo "IP :: ${ipValues[0]} SUBNET MASK :: ${ipValues[1]}"
route add default gw ${ipValues[2]}
echo "Default Gateway :: ${ipValues[2]}"
echo "Network configured properly"
exit 0
這是我的ipconf文件
IPADDRESS=192.168.1.13
SUBNETMASK=255.255.255.0
GATEWAY=192.168.1.220
這是我的腳本錯誤
ipValues[count]=192.168.1.13 Not found
ipValues[count]=255.255.255.0 Not found
ipValues[count]=192.168.1.220 Not found
Setting up IP Address
Line 20 syntax error: Bad substitution
我的腳本在ifconfig eth0 ${ipValues[0]} netmask ${ipValues[1]}
。 這個數組分配是正確的還是busybox腳本需要不同的方法?
沒錯,busybox在腳本中不支持數組語法。
為了設置值,您可以使用
eval ipValues$count=$(echo $LINE | awk -F'=' '{print $2}')
並讀取變量
ifconfig eth0 ${ipValues0} netmask ${ipValues1}
echo "IP :: ${ipValues0} SUBNET MASK :: ${ipValues1}"
route add default gw ${ipValues2}
echo "Default Gateway :: ${ipValues2}"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.