Shell編程基入門

1、什麼是Shell

2、什麼是Shell腳本

3、Shell腳本語言種類

4、腳本的建立以及執行、停止

5、腳本的基本運算符

1、什麼是Shell

Shell是一個命令解釋器,他的作用就是解釋執行用戶輸入的命令和程序,用戶輸入一條命令,它就執行一條,就可以立即得到迴應的對話方式被稱爲"交互"
Shell存在於操作系統的最外層,負責與用戶直接對話,把用戶輸入的命令解釋給操作系統,並處理各式各樣的操作系統的輸出結果,然後輸出到明明返回給用戶;例如,在Linux系統種用戶輸入用戶名和密碼並登陸到Linux後所有的操作均由Shell解釋並執行。
從’Shell’單詞的英文釋義可得,命令解釋器(Shell)是貝殼的意思,從圖片來看Shell就像貝殼一樣包住了系統核心

在這裏插入圖片描述

2、什麼是Shell腳本

當命令或程序語句不在命令行中執行,而是通過一個程序文件來執行時,該程序就可以成爲Shell腳本,通俗的說就是將一大堆命令寫入腳本中,再由Shell執行,就叫做Shell腳本,這種通過文件執行腳本的方式稱爲非交互的方式,在Windows下,這種被稱爲 ‘Dos批處理程序’

範例:清除/var/log/下的message日誌文件

必須以root用戶執行
#!/bin/bash
cd /var/log
cat /dev/null > messages
echo "Logs Cleaned up."

3、Shell腳本語言種類

1、Shell腳本語言在Unix/Linux中主要有兩大類Shell:一類是Bourne Shell 、一類是C Shell
1.Bourne shell

包括Bourne shell(sh)、 Korn shell(ksh) 、Bourne Again Shell(bash)三種

2.C shell

包括 csh 、 tcsh 兩種

查看系統支持的Shell
#[root@localhost ~] # cat /etc/shells
2、其他常用腳本語言種類
①PHP語言
②Perl語言
③Python語言
3、Linux查看系統默認Shell
法一
[root@localhost ~] # echo $SHELL
法二:
[root@localhost ~] # grep root /etc/passwd

4、腳本的建立以及執行

1、腳本開頭(第一行)
會以如下的形式指出由哪個解釋器來執行腳本中的內容,如下

#!/bin/bash
或
#!/bin/sh
1、編寫一個簡單小腳本,條件如下

1、在/root/下創建該腳本,命名爲 test.sh
2、關閉防火牆(firewalld)
3、關閉防火牆自啓
4、設置Selinux安全模塊爲允許模式
5、修改主機名爲test
6、查看當前時間
7、執行完後刪除該腳本

#!/bin/bash
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
hostnamectl set-hostname test
date
echo "Execution completed !"
rm -rf /root/test.sh
2、利用while輸出
#!/bin/bash
while [ 1 -gt 0 ]
do
sleep 1
echo 'Welcome to China !'
done

在這裏插入圖片描述
這裏是利用while語句進行循環輸出,注意 [] 中括號和數字之間一定要有空格,不能挨在一起,這裏的 -gt 是指的大於,若1>0 條件成立,那麼就執行

2、腳本的執行
1、使用 . 加上文件名或者絕對路徑,點後面有一個空格

在這裏插入圖片描述

2、使用解釋器執行,如下:

在這裏插入圖片描述

3、使用source

在這裏插入圖片描述

3.腳本的終止

CTRL + C

在這裏插入圖片描述

5、腳本的基本運算符

運算符 說明
-eq 檢測兩個數是否相等,相等返回 true。
-ne 檢測兩個數是否不相等,不相等返回 true。
-gt 檢測左邊的數是否大於右邊的,如果是,則返回 true。
-lt 檢測左邊的數是否小於右邊的,如果是,則返回 true。
-ge 檢測左邊的數是否大於等於右邊的,如果是,則返回 true。
-le 檢測左邊的數是否小於等於右邊的,如果是,則返回 true。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章