shell初級詳解

語言:人思維的抽象化符號

編程語言:

  機器語言:01代碼

  彙編語言:人識別但是機器無法識別的語言,但是這種語言已經十分接近機器語言,所有學習的週期比較長

  高級語言:接近人類的思考方式,符合機器的運行特性,需要一個編譯器轉化成機器語言

  靜態語言:編譯型語言。(這種語言有一個程序開發環境,不需要藉助額外的二進制程序,就可以直接寫代碼,寫完之後用編譯器轉換成二進制代碼,可獨立運行)這種語言也可以稱之爲強類型的語言,需要在執行前將其轉換成二進制格式

  動態語言:解釋型語言,邊解釋邊執行(on the fly),有一個解釋器解釋語言

動態語言:PHP、shell、python、perl

變量:內存空間

變量名引用變量:命名的內存空間

內存:編制的存儲單元

變量類型:事先定義數據的存儲格式和長度

①字符型

②數值型:整型和浮點型

③日期時間型

④Boolean Variable 布爾型

      真 假

邏輯運算:與、或、非、異或

與(&):兩者爲1結果纔是真,其餘數目相遇都爲假   1&0=0  1&1=1

或(||):兩個數目中只要一個爲1,結果就是真的;只有兩個0相遇纔是假 1||0=1

非(!):單數操作,對真取反,真爲假;對假取反,假爲真   !1=0

異或:操作數相同爲假,不同爲真 

計算機之所以會成爲現實:數字邏輯和計算機的電邏輯有重合

變量賦值:VAR_NAME=VALUE

bashell的變量類型:

①環境變量:

    作用域當前shell進程及其子shell進程,export=VAR_NAME設定變量爲環境變量

②本地變量(局部變量):

③位置變量:

④特殊變量:

  $?:上一個命令的執行狀態返回值(0-255)

    0:表示正確執行

1-255:全爲錯誤(1,2,127系統預留有特殊意義)

unset VAR_NAME:撤銷變量

set:查看本地變量和環境變量

查看環境變量:env  export  printenv

添加新的路徑到當前的PAHT變量當中:PATH=$PATH:/root

命令行腳本在執行的時候都會啓動一個當前shell的子shell進程,所以當前shell的環境變量對腳本是有效的

非命令行啓動的腳本就需要自我定義各環境變量

引用變量:${VAR_NAME},括號可以省略。如果引用變量後面的內容緊跟變量那麼需要加花括號。

    例如:zoo= pig 引用變量的話:echo “there are some ${zoo}s”

""和‘’的區別:“”弱引用,內部定義的變量會替換;‘’強引用不做變量替換

/dev/null:bitbucket(位桶),可將輸出重定向至此設備當中

腳本:命令的堆砌,按照實際需要,結合命令流程控制機制實現的源程序

shabang:魔數

腳本的第一行必須寫:#!/bin/bash

#:註釋行,不執行

讓腳本具有執行權限:chmod +x  scriptfile

用解釋器執行腳本:bash  scriptfile


注:出自馬哥課程

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章