1 , Shell- Instanz
( 1) Drucken Sie die 99-Multiplikationstabelle
[root @ test shell] # vi für-1.sh #! / bin / bash für i in `seq 9` #variable i nimmt eine ganze Zahl zwischen 1-9 do für j in` seq $ i` #variable j Nehmen Sie eine Ganzzahl zwischen 1-1,1-2,1-3 ... 1-9 do echo -n "$ i * $ j =` echo $ (($ i * $ j)) `" # nicht umbrechen Das Ergebnis der Multiplikation der Variablen i und der Variablen j done echo "" done ausgeben
( 2) Pingen Sie die gesamte Netzwerksegmentadresse an und geben Sie das Ergebnis in die angegebene Datei aus
[root @ test shell] # vi ping.sh #! / bin / bash für i in `seq 254` do ping -c 3 192.168.0. $ i &> / dev / null wenn [$? = 0]; dann echo "192.168.0. $ i up" >> ping.txt sonst echo "192.168.0. $ i down" >> ping.txt fi done
( 3) Echtzeitverkehr von bestimmten Netzwerkports abrufen
[root @ test shell] # vi liuliang.sh #! / bin / bash ethn = $ 1 während true #Jede Zeit, während true ausgeführt wird, wird der Befehl true aufgerufen. #true wird verwendet, um logische Operationen mit anderen Befehlen auszuführen. Der Rückgabestatus ist immer erfolgreich, der Rückgabewert ist 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})) wenn [[$ RX -lt 1024]]; elif [[$ RX -gt 1048576]]; dann RX = $ (echo $ RX | awk '{print $ 1/1048576 "MB / s"}') sonst RX = $ (echo $ RX | awk '{print $ 1 / 1024 "KB / s"} ') fi wenn [[$ TX -lt 1024]]; dann TX = "$ {TX} B / s" elif [[$ TX -gt 1048576]]; dann TX = $ (Echo $ TX | awk '{print $ 1/1048576 "MB / s"}') else TX = $ (echo $ TX | awk '{print $ 1/1024 "KB / s"}') fi echo -e "$ ethn \ t $ RX $ TX " erledigt [root @ test shell] # sh liuliang.sh eth0
Persönliche öffentliche Nummer: