提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
获取代码所在行的行号:
list_row_SSID=$(sed -n '/parameter SSID = /=' $DEFAULTS_VAPS)
sed替换:
SSID=$(echo -e "\x$(setmac 2 $(echo $(($TAG_ID_SSID_BASE + $offset))) | sed -n '2p' | sed 's/ /\\x/g' | sed 's/..$//g')")
只读取第二行:
sed -n '2p'
空格替换:
sed 's/ /\\x/g'
最后两位替换:
sed 's/..$//g'
echo命令用于在终端上打印文本。-e选项表示启用反斜杠转义字符的解释:
echo -e "\x$(setmac 2 $(echo $(($TAG_ID_SSID_BASE + $offset))) | sed -n '2p' | sed 's/ /\\x/g' | sed 's/..$//g')"
目标文件中从第1行到第一个“parameter SSID = ”所在行的范围 进行替换
sed -i "1,/parameter SSID = /{s/parameter SSID = .*/parameter SSID = \"$SSID\"\;/}" $DEFAULTS_VAPS
i++操作:
offset=$(($offset + 1))
if操作:
if [ $SSID != "\x" ];then
sed -i "1,/parameter SSID = /{s/parameter SSID = .*/parameter SSID = \"$SSID\"\;/}" $DEFAULTS_VAPS
fi
for循环:
for row_SSID in $list_row_SSID
do
offset=$(($offset + 1))
numMod=$(($numMod + 1))
if [ "$numMod" -lt "$NUM_SSID" ];then
next_row=$(($row_SSID + 1))
SSID=$(echo -e "\x$(setmac 2 $(echo $(($TAG_ID_SSID_BASE + $offset))) | sed -n '2p' | sed 's/ /\\x/g' | sed 's/..$//g')")
if [ $SSID != "\x" ];then
sed -i "$next_row,/parameter SSID = /{s/parameter SSID = .*/parameter SSID = \"$SSID\"\;/}" $DEFAULTS_VAPS
fi
fi
done