婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 5個Shell腳本編程入門練習例子

5個Shell腳本編程入門練習例子

熱門標簽:東莞電銷機器人價格一覽表 陜西電銷卡外呼系統怎么安裝 杭州機器人外呼系統 百度地圖標注圖標更換 地圖標注超出范圍怎么辦 旅游地圖標注大全 佛山高德地圖標注中心 excel地址地圖標注 百度地圖的地圖標注

例子一:繪制特殊圖形

復制代碼 代碼如下:

#!/bin/bash
 
MAX_NO=0
 
echo -n "Enter Number between (5 to 9) : "
 read MAX_NO
 
if ! [ $MAX_NO -ge 5 -a $MAX_NO -le 9 ] ; then
 echo "WTF... I ask to enter number between 5 and 9, Try Again"
 exit 1
 fi
 
clear
 
for (( i=1; i=i; s-- ))
 do
 echo -n " "
 done
 for (( j=1; j=1; i-- ))
 do
 for (( s=i; s=MAX_NO; s++ ))
 do
 echo -n " "
 done
 for (( j=1; j=i; j++ ))
 do
 echo -n " ."
 done
 echo ""
 done
 
echo -e "\n\n\t\t\t Whenever you need help, Tecmint.com is always there"

你應該不會被上述例子中的“關鍵字”困擾了,很多都是你熟悉的,或者從它們的名字可以猜出它們的意思,如“max”設定某個變量的最大值,“for”是一個循環。

輸出結果:

復制代碼 代碼如下:

[root@tecmint ~]# chmod 755 Special_Pattern.sh
[root@tecmint ~]# ./Special_Pattern.sh
Enter Number between (5 to 9) : 6
       .
      . .
     . . .
    . . . .
   . . . . .
  . . . . . .
  . . . . . .
   . . . . .
    . . . .
     . . .
      . .
       .
 
        Whenever you need help, Tecmint.com is always there

如果你有其它語言的編程基礎,那么學習上面的腳本對你來說應該很容易。即使你是計算機方面的新手,這個學習過程也不會太難。

例子二:五顏六色的腳本

Linux終端也是支持五顏六色的,請看下面的腳本:

復制代碼 代碼如下:

#!/bin/bash
 
clear
echo -e "#092;#048;33[1m Hello World"
 # bold effect
echo -e "#092;#048;33[5m Blink"
       # blink effect
echo -e "#092;#048;33[0m Hello World"
 # back to noraml
 
echo -e "#092;#048;33[31m Hello World"
 # Red color
echo -e "#092;#048;33[32m Hello World"
 # Green color
echo -e "#092;#048;33[33m Hello World"
 # See remaing on screen
echo -e "#092;#048;33[34m Hello World"
echo -e "#092;#048;33[35m Hello World"
echo -e "#092;#048;33[36m Hello World"
 
echo -e -n "#092;#048;33[0m"
  # back to noraml
echo -e "#092;#048;33[41m Hello World"
echo -e "#092;#048;33[42m Hello World"
echo -e "#092;#048;33[43m Hello World"
echo -e "#092;#048;33[44m Hello World"
echo -e "#092;#048;33[45m Hello World"
echo -e "#092;#048;33[46m Hello World"
 
echo -e "#092;#048;33[0m Hello World"

輸出結果:



你可以對上面的列子舉一反三,把它用到你自己的腳本中去。

例子三:加密文件/目錄

下面的例子演示了如何加密一個份文件或者文件夾。目前的這個版本的腳本有一些局限,例如你必須把它和你要加密的文件/目錄放到同一個文件夾下面。另外,你可能需要安裝“pinentry-gui”。在Fedora下安裝“pinentry-gui”的命令是:

復制代碼 代碼如下:
[root@midstage ~]# yum install pinentry-gui

在Ubuntu/Debian下安裝“pinentry-gui”的命令是:
復制代碼 代碼如下:
[root@midstage ~]# apt-get install pinentry-gui

創建一個腳本“Encrypt.sh”,將下面的代碼復制進去。你也可以從這里下載這個腳本。
復制代碼 代碼如下:

#!/bin/bash
echo "Welcome, I am ready to encrypt a file/folder for you"
echo "currently I have a limitation, Place me to the same folder,
where a file to be encrypted is present"
echo "Enter the Exact File Name with extension"
read file;
gpg -c $file
echo "I have encrypted the file sucessfully..."
echo "Now I will be removing the original file"
rm -rf $file

輸出結果:
復制代碼 代碼如下:

[root@tecmint ~]# chmod 755 Encrypt.sh
[root@tecmint ~]# ./Encrypt.sh
 
Welcome, I am ready to encrypt a file/folder for you
currently I have a limitation, Place me to the same folder,
where a file to be encrypted is present
Enter the Exact File Name with extension
 
package.xml
 
                   Enter passphrase
 
                   Passphrase _________________________________
 
 
                   Please re-enter this passphrase
 
                   Passphrase _________________________________
 
 
I have encrypted the file successfully...
Now I will be removing the original file

代碼說明:

gpg -c: 這個命令使用aka來加密文件。 在你需要的時候,你需要對加密的文件進行解密。這里我們不給出具體的代碼了,你可以自己嘗試著寫出來。提示:使用命令 gpg -d filename.gpg > filename 可以解密一份文件。

例子四:查看服務器利用率

查看服務器的利用率是管理員的一份重要的日常工作。聰明的管理員是知道如何是這份任務自動化的。下面的這份腳本會抓取服務器的很多信息,快快試試吧!

復制代碼 代碼如下:

#!/bin/bash
date;
echo "uptime:"
uptime
echo "Currently connected:"
w
echo "--------------------"
echo "Last logins:"
last -a |head -3
echo "--------------------"
echo "Disk and memory usage:"
df -h | xargs | awk '{print "Free/total disk: " $11 " / " $9}'
free -m | xargs | awk '{print "Free/total memory: " $17 " / " $8 " MB"}'
echo "--------------------"
start_log=`head -1 /var/log/messages |cut -c 1-12`
oom=`grep -ci kill /var/log/messages`
echo -n "OOM errors since $start_log :" $oom
echo ""
echo "--------------------"
echo "Utilization and most expensive processes:"
top -b |head -3
echo
top -b |head -10 |tail -4
echo "--------------------"
echo "Open TCP ports:"
nmap -p- -T4 127.0.0.1
echo "--------------------"
echo "Current connections:"
ss -s
echo "--------------------"
echo "processes:"
ps auxf --width=200
echo "--------------------"
echo "vmstat:"
vmstat 1 5

輸出結果:
復制代碼 代碼如下:

[root@tecmint ~]# chmod 755 Server-Health.sh
[root@tecmint ~]# ./Server-Health.sh
 
Tue Jul 16 22:01:06 IST 2013
uptime:
22:01:06 up 174 days, 4:42, 1 user, load average: 0.36, 0.25, 0.18
Currently connected:
22:01:06 up 174 days, 4:42, 1 user, load average: 0.36, 0.25, 0.18
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
tecmint pts/0 116.72.134.162 21:48 0.00s 0.03s 0.03s sshd: tecmint [priv]
--------------------
Last logins:
tecmint pts/0 Tue Jul 16 21:48 still logged in 116.72.134.162
tecmint pts/0 Tue Jul 16 21:24 - 21:43 (00:19) 116.72.134.162
--------------------
Disk and memory usage:
Free/total disk: 292G / 457G
Free/total memory: 3510 / 3838 MB
--------------------
OOM errors since Jul 14 03:37 : 0
--------------------
Utilization and most expensive processes:
top - 22:01:07 up 174 days, 4:42, 1 user, load average: 0.36, 0.25, 0.18
Tasks: 149 total, 1 running, 148 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.1%us, 0.0%sy, 0.0%ni, 99.3%id, 0.6%wa, 0.0%hi, 0.0%si, 0.0%st
 
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 3788 1128 932 S 0.0 0.0 0:32.94 init
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root RT 0 0 0 0 S 0.0 0.0 0:14.07 migration/0

例子五:查看硬盤使用情況及發送提示郵件

下面的這個例子展示了當硬盤的使用空間超出了預期設定的值時,如果通過腳本來發送提示郵件。

復制代碼 代碼如下:
MAX=95
EMAIL=server@127.0.0.1
PART=sda1
 
USE=`df -h |grep $PART | awk '{ print $5 }' | cut -d'%' -f1`
if [ $USE -gt $MAX ]; then
echo "Percent used: $USE" | mail -s "Running out of disk space" $EMAIL
fi

說明:將上述腳本中的“USER”替換成你的用戶名。你可以通過命令“mail”來查看你的郵件。

您可能感興趣的文章:
  • Shell腳本編程30分鐘入門(小結)
  • 分享一個入門級可控多線程shell腳本代碼
  • Linux Shell腳本系列教程(一):Shell入門
  • Linux shell腳本全面學習入門
  • 一篇教會你寫90%的shell腳本(入門小結)

標簽:隨州 青島 通遼 朝陽 延邊 西藏 南充 雅安

巨人網絡通訊聲明:本文標題《5個Shell腳本編程入門練習例子》,本文關鍵詞  5個,Shell,腳本,編程,入門,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《5個Shell腳本編程入門練習例子》相關的同類信息!
  • 本頁收集關于5個Shell腳本編程入門練習例子的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 织金县| 贵南县| 阿勒泰市| 双江| 云林县| 额尔古纳市| 凤翔县| 宜兰县| 交城县| 白山市| 河北区| 东安县| 资中县| 长岛县| 武威市| 沙湾县| 涟水县| 安陆市| 大竹县| 天水市| 专栏| 博罗县| 贵阳市| 加查县| 黄龙县| 雅安市| 句容市| 洪洞县| 杨浦区| 高邑县| 千阳县| 葫芦岛市| 霍州市| 宁强县| 新宾| 宾阳县| 应用必备| 英山县| 新河县| 黔东| 聂荣县|