第二十天

shell編程:


編譯器,解釋器


編程語言:機器語言、彙編語言、高級語言


靜態語言:編譯型語言

強類型(變量)

事先轉換成可執行格式

C、C++、JAVA、C#


動態語言:解釋型語言,on the fly

弱類型

邊解釋邊執行

PHP、SHELL、Python、perl


面向過程:shell,c

面向對象:JAVA,python,perl,c++


變量:內從空間,命名


內存:編址的存儲單元


進程:程序運行起來就是進程


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

字符

數值:整型,浮點型

              整型:8bit,村256-->溢出

布爾型:真,假



與:只要一個爲假-->假  短路邏輯運算

或:只要一個爲真-->真 

非:

異或:


強類型:變量在使用前,必須事先聲明,甚至初始化

NULL:爲空

弱類型:變量用時聲明,甚至不區分類型;

如果不聲明,默認爲字符類型


變量賦值:變量名=值


bash變量類型:

環境變量:

本地變量:(局部變量)

位置變量:

特殊變量:


本地變量:

VARNAME=VALUE:作用域爲整個bash進程;

局部變量:

local VARNAME=VALUE:作用域爲當前代碼段;

環境變量:

export VARNAME=VALUE;

“導出”

腳本在執行時會啓動一個子shell進程;

命令行中啓動的腳本會繼承當前shell的環境變量

系統自動執行的腳本(非命令行啓動)就需要自我定義需要的各環境變量;


引用變量:${VARNAME} 括號可省

位置變量:$1,$2...

特殊變量:

$?:上一個命令的執行狀態返回值;

        程序執行,可能有兩類返回值:

程序執行結果

       程序狀態返回代碼(0-255)

0:正確執行

1-255:錯誤執行,1,2,127系統預留;


輸出重定向:> >> 2> 2>> &>

撤銷變量:

unset VARNAME


查看當前shell中變量:set 包括環境變量和本地變量

查看當前shell中的環境變量:

printenv,env,export


爲PATH變量添加/usr/local/mysql

export PATH=$PATH :/usr/local/mysql 

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


shebang:魔數

#!/bin/bash -->腳本開頭

#           -->註釋行,不執行


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