bash环境(变量与bash配置文件)
一:名詞理解
編譯型:源程序(文本文件) ?預處理 ?編譯 ?匯編 ?鏈接
? ? 靜態語言
解釋型:源程序(文本文件) ?解析器讀取并執行
? ? 動態語言
編譯器:
解釋器:
? ? ? ?解釋:
? ? ? ? ? ? 詞法分析
? ? ? ? ? ? 語法分析
? ? ? ? ? ? 語義分析
條件判斷:選擇分支
循環:
對象式編程:
過程式編程:
? ? ? ? ?順序執行
? ? ? ? ?選擇執行
? ? ? ? ?循環執行
解釋器:提供了編程環境
腳本:使用bash提供控制機智,將期望執行的命令羅列于文本文件中
? ? ? bash沒有庫,整個程序幾乎都要依賴于命令
二、變量
1、bash變量類別:
本地變量:只對當前shell進程有效,對其它shell進程無效,包括當前shell的子進程
? ? ?變量賦值:向變量的存儲空間保存數據 ? VAR_NAME=VALUE
? ? ?變量引用:${VAR_NAME}?
? ? ? ? ? ?“”:弱引用,里面的變量會被替換
? ? ? ? ? ? '':強引用,里面的所有字符都是字面量,直接輸出
環境變量:對當前shell進程有效及其子shell有效,對其他shell無效
? ? 定義:export VAR_NAME=VALUE
? ? 導出:export VAR_NAME?
? ? 撤銷變量: unset VAR_NAME?
? ? 只讀變量: readonly VAR_NAME ?
? ? ? ? ? 用戶可自定義,bash有許多內置的環境變量
局部變量:對shell腳本中某代碼片段有效,通常用于函數本地:
? ? 定義: local VAR_NAME=VALUE
位置參數變量:$1,$2,$3、、、${10}
特殊變量:$?,
查看當前shell進程中的所有變量:set
查看當前shell進程中的所有環境變量:export,printenv,env
變量命令:
? ? 1、不能使用程序中的關鍵字(保留字)如,if,case,for
? ? 2、只能使用數字,字母和下劃線,且不能以數字開頭
? ? 3、要見名知義
2、變量類型
? ? ? ? a.存儲機制
? ? ? ? b.存儲空間
? ? ? ? c.參與的運算方式
? ? ? ? ? ? (二進制)數字的存儲, ? ? ? ? ? ? ? ?18:00010010
? ? ? ? ? ? 文本的存儲, ?ASCII:128常用字符 ? ? ? 18:1,8
? ? ? ? ?1:8bits ? 8:8bits ? 18:16bits
? ?變量類型:
? ? ? ? 數值型:
? ? ? ? ? ? 精確數值:整數
? ? ? ? ? ? 近似數值:浮點型
? ? ? ? ? ? ? ? ? ? ? ? ? 單精度浮點
? ? ? ? ? ? ? ? ? ? ? ? ? 雙精度浮點
? ? ? ? ?字符型:
? ? ? ? ? ? ?char
? ? ? ? ? ? ?string
? ? ? ? ?布爾型:true,false
bash是弱字符型語言,一切皆字符
類型轉換:顯示轉換,隱式轉換 ? ?
三、bash的配置文件???
profile類:為交互式登錄的用戶提供配置
? ? ? 全局: ??
? ? ? ? ? ?/etc/profile
? ? ? ? ? /etc/profile.d/*.sh
? ? ? 用戶:~/.bash_profile
用途:
? ? ?1、設定環境變量
? ? ?2、運行命令或腳本
bashrc類:為非交互式用戶提供配置
? ? ?全局:/etc/bashrc
? ? ?用戶:~/.bashrc
用途:
? ? ?1、設定本地變量
? ? ?2、定義命令別名
登錄類型:
? ? 交互式:直接通過終端輸入帳號和密碼登錄,使用su - USERNAME
? ? 非交互式:su USERNAME
? ? ? ? ? ? ?圖形界面下打開的終端
? ? ? ? ? ? ?執行腳本
如何使通過編輯配置文件修改的配置生效?
1、退出并重新登錄
2、讓bash重讀此配置文件
? ? . FILENAME ? ? ??注意,多次重讀配置文件可能會產生重復賦值? ??
? ? source FILENAME
系統開機讀取bash配置文件順序
交互登錄的用戶:
? ? ? ? ? /etc/profile ?/etc/profile.d/*.sh ~/.bash_profile ~/.bashrc /etc/bashrc
非交互式登錄的用戶:
? ? ? ? ? ~/.bashrc /etc/bashrc ?/etc/proile.d/*.sh?
轉載于:https://blog.51cto.com/maxiaoyu/1691500
總結
以上是生活随笔為你收集整理的bash环境(变量与bash配置文件)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用Xcode 7 beta免费真机调试
- 下一篇: 用android LinearLayou