1. 程式人生 > >謝煙客---------Linux之Bash基礎特性(2)

謝煙客---------Linux之Bash基礎特性(2)

linux總結

Linux之哲學思想

一切皆文件

避免交互,實現Bash編程

文本編程命令實現配置

組合小程序完成復雜任務


總結

過程式編程

解釋執行

字符和數值存儲的區別

shebang -> cpu ->解釋器

數據類型

變量類型,即為內部數據的類型


bash

過程式編程、解釋執行

變量的類型為:弱類型


11)Bash編程

編程風格:過程式編程、對象式編程

過程式編程:目的解決問題

只考慮數據怎麽組織

指令組織數據

為了完成復雜的任務

順序執行:逐個運行任務

選擇執行:有一個標準,只執行某些代碼片段

循環執行:讓某些代碼片段重復執行N次

編程執行的方式

編譯執行:c,java 先翻譯後執行:高級語言 --> 編譯 --> 目標代碼 --> 匯編 --> 二進制指令

解釋執行:shell,python,java 邊翻譯邊執行,為了避免語境的錯亂,先對程序進行語法檢查後,都會進行翻譯:解釋型語言-->解釋器-->目標代碼

解釋執行的特性

純文本

魔數為一個指明解釋器路徑的代碼

由解釋器執行源程序

CPU上運行的為解釋器,由解釋器運行文本


魔數源碼編譯為二進制後,文件的前n個字節,用於判斷可執行程序的格式

編程語言的結構

數據存儲:變量、數組

表達式、語句


編程語言,為了使編程簡潔

操作系統提供庫

提供解釋器


shell程序:

過程式編程、解釋執行


shell編程特性

直接調用系統程序

命令的堆砌

嚴重依賴操作系統的環境


shell腳本的格式:

必須有固定的格式:首行為魔數

必須能讀取$PATH的值,bash嚴重依賴PATH查找執行程序文件

運行腳本:

1、給予權限、通過具體的路徑指定文件執行

2、直接解釋執行,將腳本作為解釋器程序的參數執行


12、變量

變量名:用名字可引用的命令的內存空間,用名字即可調用事先劃分的內存空間,內存空間的名字

變量: 單個命令的內存空間


程序 = 指令 + 數據

數據可存儲在變量、數組、列表、文件


變量中存儲的數據的類型

字符型:用二進制位表示所有變化。例如 2^16表示所有漢字的5000種變化,這種規定有GBK2313,GB18030等。用2^8表示所有數字、字母、特殊字符的127種變化,美國規定的ASCII碼表

所以存儲一個漢字時,用16位即可 ,存儲一個數字時,用8位即可

數值型

整型,數值型數據例如110十進制轉換為二進制數即可:110 --> 1101110 用7位即可

浮點型

*任何數據都能被這兩種類型包含

今天:字符用16 + 16位即可

相當於UNIX元年的天數


布爾型

1:true bash中用 命令的狀態結果的0表示

0: false bash中用命令的狀態結果的1-255表示

邏輯運算:

與: 電路串聯,同時為true結果為true,其他均為假。

或: 電路並聯,一個為true結果為true,其他均為假。

非:電路的電磁感應,對運算的結果取反,非true為false. 非false為true

短路運算:

與: 左側為false,結果為false.左側為true,第二個必須要參與運算

或: 第一個為true,結果為true.左側為false,第十個必須要參與運算


運算:

全為字符型: 10 + 110 = 10110

全為數值型: 10 + 110 = 120


如果變量中數據類型不統一,運算就會混亂


2)變量

變量的類型

變量的類型即是變量中數據存儲的類型


變量的作用:

決定參與的運算

決定變量的數據範圍:整型為4個字節,32位,2^32=40多億個數字

變量類型

字符

數值

整型

浮點型


強類型和弱類型

強類型:必須申明變量為字符或數值型

弱類型:不用事先申明變量為何種類型,shell


弱類型的特性

統一存儲為字符型

如果需要用到運算時,會做自動的切換




本文出自 “Reading” 博客,謝絕轉載!

謝煙客---------Linux之Bash基礎特性(2)