天天看點

Linux基礎特性總結之二

計算機基礎

Linux曆史

檔案管理(檢視、處理)

目錄管理

LHS

時間戳、時間、關機

哲學思想

檔案命名

Bash的基礎特性

    指令行展開

    指令補全

    路徑補全

    glob

    快捷鍵

    管道

    I/O重定向

    别名

    hash

    變量

grep,egrep,fgrep

    配置檔案

    算術運算表達式

    測試表達式

    退出狀态碼

變量:

    定義

        變量名

        變量

資料類型

變量類型

變量類型作用(存儲資料的格式,範圍,參與的運算)

強類型

弱類型 1不用定義 2 直接指派,預設存儲 為字元型  3 調用時隐式轉換

bash作用域的變量

    本地, 環境 , 局部, 位置 , 特殊變量 的生效範圍

變量指令的法則

    1 不能數字開頭,不能用關鍵字

    2 見名知義

    3 避免全大寫, _ 開頭

檔案命名的法則

    1 不能數字開頭,不能用特殊字元 (glob通配符)

    2 區分大小寫

    3 不能為/ [^/]

    4 長度<255

    5 .開頭為隐藏檔案

    檔案/ 組合 小程式/ 文本實作配置 / 盡量不互動

grep    .  [] [^]  * \+ \? \{m\} \{m,n\} \(\) 

egerp  .  [] [^]  * + ? {m} {m,n} ()               |

^,$

egrep 或 “grep并不支援”

[abcd] 字元級别的或

c|cat 左側整體或右側整體

(c|c)at 分組或

變量指派

    name='value' 

        name将單個記憶體空間命名

        = 指派符号

        指派: 将值存儲在變量所表示的記憶體空間中

        ' ' 

        “ ”

        value 值

            純文字引用指派    

                name=obama

                空格?

            變量引用實作指派 加載一個變量記憶體空間中存儲的值至CPU寄存器中,經過處理後,存加記憶體空間中.

               name="obama jerry"

                  name=$name  ##存回原處

                   var=$name    ##存到另一處

            指令引用實作指派

                  name=`command`

                  name=$(command)

    引用        強、弱

    ${name} $name 使用的場景

    撤消: Unset

    本地變量檢視: set

     環境變量檢視: export env printenv

        不要随便給大寫字母指派,可能會導緻bash工作特性改變

            PS1 指令提示符前面的字元

            PATH 指令的搜尋路徑

            UID 

            SHELL

    位置變量: 類似,正規表達式引擎将括号中模式所比對到的内容記錄于内置變量中, \1,\2,\3

        bash将傳遞給腳本的參數儲存在内置變量中, $1,$2,$3,可供腳本中調用,如果,不存在,則為空。

    特殊變量: 

        $0

        $#

        $@

        $*   看做一個整體

        $? 指令的執行狀态結果

    換港操作符

            shift #

算術運算

    let 算術運算表達式

    let var=$num1+$num2

    變量引用指派

        var=$[算術運算表達式]

        var=$((算術運算表達式))

    指令引用指派

        var=$(expr 算術運算表達式)

            var=$(expr $num1 + $num2)

    生成随機數

        let $RANDOM%$VAR

        $[$RANDOM%10]

        $(($RANDOM%10))

        $( expr $RANDOM % 10)

 配置檔案

    全局: /etc/{profile,profile.d} /etc/bashrc

    個人:~/.bashrc, ~/.bash_profile

    功能

            profile 環境 變量 , 腳本 

            bashrc 本地變量   别名   

    登陸方式,讀取配置順序

        互動式登陸

            需要輸入密碼的登陸  或  su -[l] user

        /etc/profile /etc/profile.d ~/.bash_profile 

        ~/.bashrc /etc/bashrc     

    非互動式登陸

            不需要輸入密碼的登陸  或 su user 圖形終端

            腳本運作在目前shell子shell程序中

        ~/.bashrc /etc/bashrc /etc/profile.d

測試表達式

    數值測試

        符号: -eq,-ne,-gt,-ge,-lt,-le

    字元測試 (左右都需要 加 引号,  除了 pattern不能加引号,且隻能用于 ` ` 中)

        符号: == , != , >, < ,  -z "string" -n "string"          A =~ pattern(正規表達式字元組合的模式)

    檔案測試

        符号

退出狀态碼

    exit [#]

本文轉自 lccnx 51CTO部落格,原文連結:http://blog.51cto.com/sonlich/1953102,如需轉載請自行聯系原作者

繼續閱讀