開發的時候,常常會需要寫一個腳本,可能是希望上電啓動某個程序,也可能是希望循環的執行某一個命令,還有時候需要在腳本中添加判斷並分支執行等等。
如何寫一個循環腳本:
一個最簡單的循環腳本如下:
while [ 條件判斷 ]
do
echo "TRUE"
sleep 1
done
如何在腳本中添加一個判斷:
一個最簡單的判斷語句:
if [ 條件判斷 ];then
echo "TRUE"
else
echo "FALSE"
fi
如何在腳本中將打印輸出到串口:
一個最簡單輸出到串口的例子:
echo "TRUE" > /dev/對應串口號
將上面三種一起用起來,
上電後循環判斷網卡是否已經註冊,並將打印輸出到串口:
while true
do
if busybox ifconfig -a | grep eth1 > /dev/null;then
echo "net_device active." > /dev/ttyAMA0
break;
else
echo "wait net_device active." > /dev/ttyAMA0
sleep 1
fi
done
下面這個腳本的功能是查找/proc下的進程中是否有哪個進程打開了ttyS1:
#!/bin/sh
i=1
max=40000
while [ $i -le $max ]
do
# echo $i
# ls $i
if [ -d /proc/$i/fd ]
then
cd /proc/$i/fd
ls -l | grep ttyS1
if [ $? == 0 ]
then
echo "notice pid $i"
fi
fi
i=`expr $i + 1`
done