編程語言通常可分爲靜態語言以及動態語言。
java
靜態語言:編譯型語言 強類型(變量) 事先編譯 python
例如:c c++ java c#c++
動態語言:解釋型語言 弱類型 (默認不區分變量類型,而且默認類型爲字符串型)shell
例如:PHP shell python perl編程
面向對象:java pythonc#
面向過程:shellbash
變量:內存空間,命名的內存空間 #能回收編程語言
內存:編址的內存空間ide
變量的類型可分爲:字符、數值、真假 聲明變量類型的做用是事先肯定存儲格式和長度命令行
邏輯運算:與、或、非、異或
#非門在現實中使用電磁感應,來開關閉合電路
bash中的變量可分爲:環境變量、本地變量(局部變量)、位置變量、特殊變量
變量名:字母,數字,下劃線且不能數字開頭
不能與環境變量重名
最好作到見名知意
本地變量; VARNAME=VALUE 做用於整個bash進程
引用變量 $(VARNAME)變量有時可省略
局部變量 local VARNAME=VALUE 做用於當前代碼段
環境變量 做用於當前shell進程及其子進程
export VARNAME=VALUE 「導出」
因爲腳本在執行時會啓動子shell進程
命令行啓動腳本會繼承當前shell的環境變量
系統自動執行的腳本(非命令行啓動)須要自我定義須要的環境變量
位置變量 $1,$2
特殊變量 $? 保存上一個命令執行狀態返回值
程序狀態返回代碼 0:正確執行
1-255:錯誤 1.2.127系統預留
$# 表示參數個數
$* 表示參數列表
$@ 表示參數列表
shift 輪遞 shift [n] 一次替換n個
輸出重定向:>,>>,2>,2>>,&>
例如: id username &> /dev/null #/dev/null爲數據黑洞 bit bucket
撤銷變量 unset VARNAME #建立變量爲
查看變量 set
查看當前shell的環境變量 printenv env export
環境變量添加:字符串型變量能夠使用,例如export PATH=$PATH:(添加路徑名)