1 、シェルインスタンス
( 1)99乗算表を印刷する
[root @ test shell] #vi for-1.sh #!/ bin / bash for i in `seq 9` #variable iは、 それぞれ1〜9の整数を取ります do for j in` seq $ i` #variable j 1-1,1-2,1-3 ... 1-9の間の整数乗り DO エコー-n "$ iの$ J =`エコー$(($私は$ jは*)) `*" #doないラップを変数を乗算した結果は、iと変数jの出力 行わ エコー「」 行って
( 2)ネットワークセグメントアドレス全体にpingを実行し、指定したファイルに結果を出力します。
[root @ test shell] #vi ping.sh #!/ bin / bash for i in `seq 254` do ping -c 3192.168.0 。$ i&> / dev / null if [$?= 0]; 次に、 echo "192.168.0。$ i up" >> ping.txt else echo "192.168.0。$ i down" >> ping.txt fi done
( 3)指定されたネットワークポートのリアルタイムトラフィックを取得します
[root @ test shell] #vi liuliang.sh #!/ bin / bash ethn = $ 1 while true #true が実行されるたびに、trueコマンドが呼び出されます。 #trueは、他のコマンドで論理操作を実行するために使用されます。戻りステータスは常に成功です。戻り値は0です。 do RX_pre = $(cat / proc / net / dev | grep $ ethn | sed's /:/ / g '| awk' {print $ 2} ') TX_pre = $(cat / proc / net / dev | grep $ ethn | sed's /:/ / g '| awk'(print $ 10} ') sleep 1 RX_next = $(cat / proc / net / dev | grep $ ethn | sed's /:/ / g' | awk '{ print $ 2} ') TX_next = $(cat / proc / net / dev | grep $ ethn | sed's /:/ / g' | awk '{print $ 10}') clear echo -e "\ t RX` date + %k:%M:%S` TX " RX = $(($ {RX_next}-$ {RX_pre})) TX = $(($ {TX_next}-$ {TX_pre})) if [[$ RX -lt 1024]]; elif [[$ RX -gt 1048576]]; then RX = $(echo $ RX | awk '{print $ 1/1048576 "MB / s"}') else RX = $(echo $ RX | awk '{print $ 1 / 1024 "KB / s"} ') fi if [[$ TX -lt 1024]]; then TX = "$ {TX} B / s" elif [[$ TX -gt 1048576]]; then TX = $(echo $ TX | awk '{print $ 1/1048576 "MB / s"}') else TX = $(echo $ TX | awk '{print $ 1/104 "KB / s"}') fi echo -e "$ ethn \ t $ RX $ TX " done [root @ test shell] #sh liuliang.sh eth0
個人公開番号: