shell script 編寫和執行

2021-07-14 11:26:28 字數 1966 閱讀 7684

學習shell script,那麼shell script是什麼呢?其漢語意思是程式化指令碼。其實shell script 是利用shell的功能所寫的乙個程式(program),這個程式是使用純文字檔案,將一些shell的語法與命令寫在裡面,搭配正規表示式,管道命令與資料流重定向等功能,以達到我們所想要的目的。

那麼學習shell script都有什麼好處呢?

(1)自動化管理重要依據

(2)追蹤與管理系統的重要工作

(3)簡單入侵檢測

(4)跨平台支援與學習歷程較短

反正shell script好處多多,自己可以乙個個認真學習。

說了這麼多應該進入正題了,那就讓我們寫一下我們的第乙個script吧!

注意:

1 命令的執行是自上而下,從左至右的;

2 第一次輸入enter就開始嘗試執行改、該行命令;

3 如果內容太多可以加」\enter」;

4 #可以做批註,相當於c裡面的//

第乙個script來了

vim sh01.sh

!/bin/bash#program:

this program shows 「hello world」

history

2016/7/6

echo -e 「hello world!」

exit 0

至此第乙個script就寫完了

第一行#!/bin/bash 宣告script的名稱除了第乙個#外,其他的都是批註用途。而做批註目的是便於以後管理這些script

只要的程式部分是 echo那一行,而exit是中斷程式,並回傳乙個值給系統。

最後利用 sh sh01.sh 執行即可。

我們再看乙個script

要求使用者輸入first name 和 last name,然後輸出full name

vim sh02.sh

!bin/bash

program:

show person』s fulln name;

history

2016/7/6

read -p 「please putin our first name!」 firstname

read -p 「please putin your last name」 lastname

echo -e 「\nyour full name is 「firstnamelastname

然後執行,就能達到目的。read的功能是可以讀取使用者終端輸入的東西

我們再看看幾個常用語句的用法

1 判斷式

(1) test

當我們檢測系統上面某些檔案的屬性,許可權時,利用test就再好不過了

1、大小不能超過2m

2、支援格式:.jpg .gif .png .bmp

比如 test -e/dmtsai &&echo 「exist」 ||」not exist」 這時候就可以很快知道/dmtsai相關的東西了

(2)if…then…fi 這是簡單的條件判斷式

用法 if [條件判斷式] then

條件成立時,需要做的事

fi –>將if反過來寫1,結束if之意

2 迴圈

(1)while do done

while [判斷式]

do —>程式的開始

程式段落

done –.迴圈結束

(2)unit do done

unit [判斷式]

do 程式段落

done

這個和while恰好相反,當條件滿足時不做,不滿足時做。

(3)for do done

for var in con1 con2 con3….

do 程式段落

done

對於上面例子來說 var內容再迴圈時第一次var 內容為con1

依次就是 con2 con3…….

第乙個shell script的編寫和執行

shell script其實是純文字檔案,我們可以編輯這個檔案,並利用這個檔案來幫助我們執行多個命令,或是利用一些運算與邏輯判斷來幫我們達成某些功能。bin bash program this program shows hello world in your screen.history 2020...

運維標書技術部分的編寫

一 運維招標的由來 當乙個軟體專案結項以後,往往有一段時間 一般為一年 的免費運維服務。如一年以後專案仍在甲方執行,該年度的軟體運維則以運維服務形式向運維商招標。最常見的如防毒軟體的年度服務費。就當今現狀,其一甲方 多為 或事業單位 不會編寫招標檔案,其扮演的角色多為管理和組織 也就是提要求 實施多...

拋磚引玉 Greenplum運維指令碼編寫方式

今天跟大家一起分享幾個運維命令,這些命令都是由普通的linux命令組成的,可以任意組合封裝成shell指令碼,也可以延伸思路封裝其他命令,下面放乾貨拋磚引玉 命令 gpssh f home dgadmin hostfile du h exclude pg log exclude db dump s ...