中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SHELL 編程規范及變量

發布時間:2020-07-27 09:19:04 來源:網絡 閱讀:314 作者:wx5d3a7feeb53cc 欄目:云計算

Shell編程規范及變量

Sheel腳本概述

將要執行的命令吧順序保存到一個文本文檔
給該文件可執行權限,便可運行
可結合各種Shell控制語句以完成更復雜的操作

Shell腳本應運場景

重復性操作
批量事物處理
自動化運維
服務運行狀態監控(zabbix)
定時任務執行

Shell的作用——命令解釋器,“翻譯官”

介于系統內核與用戶之間,,負責解釋命令行
SHELL 編程規范及變量

用戶的登錄Shell

登錄后默認使用的Shell程序,一般為 /bin/bash
不同的Shell的內部指令,運行環境等會有所區別

編寫腳本代碼

使用vi文本編輯器
每行一條Linux命令,按執行順序依次編寫
SHELL 編程規范及變量

賦予可執行權力

使腳本具有可執行權限

[root@localhost~]# chmod +x first.sh

執行腳本文件

方法一:腳本文件路徑(絕對路徑與相對路徑)

[root@localhost~]# ./first.sh

需要執行權限,執行完成后也不會改變所在位置
方法二:sh 腳本文件路徑

[root@localhost~]# sh /first.sh

不需要權限能執行但不會改變所在位置
方法三:source 腳本文件路徑

[root@localhost~]# source /first.sh

不需要權限能執行但會改變所在目錄位置
方法四:“.”的使用

[root@localhost~]# . first.sh

執行也能執行成功,不需要X執行權限,改變所在位置

更完善的腳本構成

(1)腳本聲明

#!/bin/bash

(2)注釋信息

echo "當前的目錄位于"

(3)可執行語句

ls -ln vml*

如下圖:
SHELL 編程規范及變量

編程的交互式硬件設備

(1)標準輸入:從該設備接收用戶輸入的數據 /dev/stdin 0 鍵盤
(2)標準輸出:通過該設備向用戶輸出數據 /dev/stdout 1 顯示器
(3)標準錯誤:通過該設備報告執行出錯誤信息 /dev/stderr 2 顯示器
SHELL 編程規范及變量

重定向與管道操作

重定向操作

類型 操作符 用途
重定向輸入 < 從指定的文件讀取數據,而不是從鍵盤輸入
重定向輸出 > 將輸出結果保存到指定文件夾(覆蓋原有內容)
重定向輸出 >> 將輸出信息追加到指定的文件
標準錯誤輸出 2> 將錯誤信息保存到指定的文件(覆蓋原有內容)
標準錯誤輸出 2>> 將錯誤信息追加到指定的文件中
混合輸出 &> 將標準輸出、標準錯誤的內容保存到同一個文件中

管道操作符號

"|"
將左側的命令輸出結果。作為右側命令的處理對象

cmd1 | cmd2 [... | cmdn]

Shell 變量的作用、類型

變量的作用

為靈活管理Linux系統提供特定參數,有兩層意思
(1)變量名:使用固定的名稱,由系統預設或用戶定義
(2)變量值:能夠使用用戶設置、系統環境的變化而變化

變量的類型

(1)自定義變量:由用戶自己定義、修改和使用
(2)環境變量:由系統維護、用于設置工作環境
(3)位置變量:通過命令行給腳本程序傳遞參數
(4)預定義變量:Bash中內置的一類變量,不能直接修改

自定義變量

定義一個新的變量

變量名以字母或下劃線開頭,區分大小寫,建議全大寫

變量名 = 變量值
查看變量的值## 標題
echo $變量名

SHELL 編程規范及變量

賦值時使用引號
雙引號:允許通過$符號引用其他變量值
單引號:禁止引用其他變量值,$視為普通字符
反撇號(`):命令替換,提取命令進行后的輸出結果 
從鍵盤輸入內容為變量賦值
read [-p  "提示信息"] 變量名
設置變量的作用范圍
格式1:export 變量名
格式1:export 變量名=變量值

兩種格式可以混合使用
SHELL 編程規范及變量

整數變量的運算

expr 變量1 運算符 變量2 [ 運算符 變量3]
常用運算符

(1)加法運算:+
(2)減法運算:-
(3)乘法運算:*
(4)除法運算:/
(5)求模(取余)運算:%

特殊的Shell變量

環境變量

由系統提前創建,用來設置用戶的工作環境
配置文件: /etc/profile、~/.bash_profile

常見的環境變量

PWD 、 PATH、 USER、 HOME、 SHELL

位置變量

表示為$n,n為1~9之間的數字

[root@localhost ~]# ./myprog.sh one two three four five six
one :$1,第一個位置參數
two:$2,第二個位置參數
tsix:$6,第六個位置參數
預定義變量
(1)$#:命令行中位置變量的個數
(2)$*:所有位置變量的內容
(3)$?:上一條命令執行后返回的狀態,當返回值為0時代表執行正常,非0只表示執行異常或出錯
(4)$0:當前執行的進程/程序名

SHELL 編程規范及變量

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

通化市| 远安县| 东海县| 平顺县| 桃园市| 文登市| 普安县| 福鼎市| 乌兰察布市| 九龙县| 平谷区| 五大连池市| 辽阳市| 德州市| 尉氏县| 沙坪坝区| 彰化县| 专栏| 通州区| 海淀区| 腾冲县| 南川市| 东阿县| 新巴尔虎左旗| 上高县| 都昌县| 木兰县| 久治县| 内乡县| 普陀区| 绿春县| 临朐县| 建阳市| 达州市| 南陵县| 长武县| 毕节市| 江华| 鸡泽县| 镇宁| 探索|