Linux大資料定製篇 Shell程式設計

luozuishuai發表於2021-01-01

為什麼要學習 Shell 程式設計

  1. Linux 運維工程師在進行伺服器叢集管理時,需要編寫 Shell 程式來進行伺服器管理。
  2. 對於 JavaEE 和 Python 程式設計師來說,工作的需要,你的老大會要求你編寫一些 Shell 指令碼進行程式或者是伺服器的維護,比如編寫一個定時備份資料庫的指令碼。
  3. 對於大資料程式設計師來說,需要編寫 Shell 程式來管理叢集。

Shell 是什麼

畫一個示意圖:
在這裡插入圖片描述

Shell 是一個命令列直譯器,它為使用者提供了一個向 Linux 核心傳送請求以便執行程式的介面系統級程式,使用者可以用 Shell 來啟動、掛起、停止甚至是編寫一些程式.

shell 程式設計快速入門-Shell 指令碼的執行方式

指令碼格式要求

  1. 指令碼以#!/bin/bash 開頭
  2. 指令碼需要有可執行許可權

編寫第一個 Shell 指令碼

  • 需求說明
    建立一個 Shell 指令碼,輸出 hello world!
    看案例:
    在這裡插入圖片描述

指令碼的常用執行方式

  • 方式 1(輸入指令碼的 絕對路徑或 相對路徑)
    1)首先要賦予 helloworld.sh 指令碼的+x許可權
    2)執行指令碼
    在這裡插入圖片描述
  • 方式 2(sh+指令碼),不推薦
    說明:不用賦予指令碼+x 許可權,直接執行即可
    在這裡插入圖片描述

shell 的變數

Shell 的變數的介紹

1)Linux Shell 中的變數分為, 系統變數和 使用者自定義變數。
2)系統變數:$HOME$PWD$SHELL$USER 等等
比如: echo $HOME 等等…
在這裡插入圖片描述
在這裡插入圖片描述

3)顯示當前 shell 中所有變數:set
在這裡插入圖片描述

shell 變數的定義

  • 基本語法
    1)定義變數:變數=值
    2)撤銷變數:unset 變數
  • 快速入門
    案例 1:定義變數 A
    案例 2:撤銷變數 A
    在這裡插入圖片描述
    在這裡插入圖片描述
  1. 宣告靜態變數:readonly 變數,注意:不能 unset
    在這裡插入圖片描述在這裡插入圖片描述

相關文章