关于Linux she'll脚本的问题,she'll脚本比较两个字符串是否相等

bossjuemfc 2016-11-30 09:05:15
我想在嵌入式Linux里面连WiFi,这个脚本是当系统的Bit_Rate的值等于Bit Rate=11 Mb/s的时候,就跳出循环,进行dhcp。
现在的问题是,这个循环跳不出来,但是经过我的实验,这两个值是可以相等的。
所以,在Linuxshe'll中,关于字符串相等的比较,是这样使用吗?
高亮部分是代码关键部分。


[code=c]#!/bin/bash
Bit_Rate="Bit Rate=11 Mb/s"
insmod /lib/modules/3.10.17/kernel/driver/net/wireless/rt2x00/rt5572.ko
insmod /lib/modules/3.10.17/kernel/net/wireless/cfg80211.ko
insmod /lib/modules/3.10.17/kernel/net/mac80211/mac80211.ko

ifconfig ra0 up &
iwlist scanning
iwconfig ra0 ap 6C:B0:CE:16:66:C
Bit_Rate_test=`iwconfig ra0 | grep Bit`
while [ "$Bit_Rate" != "$Bit_Rate_test" ]
do
iwconfig ra0 ap 6C:B0:CE:16:66:C0
Bit_Rate_test=`iwconfig ra0 | grep Bit`
done


udhcpc -i ra0 -n
route add default gw 192.168.1.237
echo "nameserver 192.168.1.237">/etc/resolv.conf
[/code]
...全文
874 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
jack_ooneil 2017-02-09
  • 打赏
  • 举报
回复
字符串可以使用这种方式来比较。 不过iwconfig ra0 | grep Bit 这个命令获取出来的字符串需要和 “”Bit Rate=11 Mb/s“”完全一样(包括空格),才会相等,看起来这样的方式不是特别可靠, 我觉得可以把比特率 的数字提取出来,然后比较数字的大小会更稳妥一点,你可以试一下。

21,597

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧