bash變量的介紹
阿新 • • 發佈:2018-05-25
bash變量 bash變量
變量:一段有名稱的連續的內存空間;這段內存空間的名稱,稱為變量名;在這段內存空間中存儲的數據,則稱為變量值;
變量:一段有名稱的連續的內存空間;這段內存空間的名稱,稱為變量名;在這段內存空間中存儲的數據,則稱為變量值;
程序 = 指令 + 數據 數據:文件,存在值; 向內存空間(變量)中存儲數據的過程,稱為賦值操作;賦值符號通常為"="; 變量的類型: 123 -- 整型:01111011 -- 字符型:ASCII:3字節 -- 字符型:UTF-8:9字節 變量: 強變量:使用之前必須事先予以聲明;必須聲明變量類型; 弱變量:在使用之前無需聲明,無需指明變量類型;(bash變量) 變量的賦值方法: VARNAME=VALUE 其含義:將某數值(VALUE)通過賦值操作(=)存儲於特定的內存空間中(VARNAME); bash中變量名稱的命名規範: 1.變量名只能以"_"或"字母"為起始字符,後面的其他字符可以是任意字母,數字或下劃線; 2.變量名中的字母是大小寫敏感的; 3.命名的書寫格式: 全大寫:HISTSIZE 全小寫:myvar 駝峰式:MyNewVariable 連接式:My_New_Var 4.變量名要能做到見名知意; 5.變量名不能與已知變量或bash的內置變量重復; bash中的變量的分類: 根據變量的作用範圍來劃分: 全局變量(環境變量):作用範圍為整個shell進程,包括其子shell; 本地變量:作用範圍為當前登錄時打開的shell進程,不包括其子shell; 局部變量:作用範圍僅僅只是當前程序段,一般用於函數; 根據變量的聲明方式來劃分: bash內置變量: 普通的內置變量:HISTSIZE,... 位置參數變量:$0, $1, $2, ... 特殊變量:$?, $#, $*, $@, $$, ... $?:展開為最近一次執行的命令的狀態返回值(退出狀態碼);用以表示最近一次執行的命令是否成功執行; $#:不包括$0在內的其余的位置參數的個數,以十進制數字表示; $*:從$1開始展開為位置參數。當使用雙引號引用展開的結果時,它展開為特殊變量IFS的第一個字符分隔的值; $@:從$1開始展開為位置參數。當使用雙引號引用展開的結果時,它展開為一個單獨的字符串; $$:展開為當前shell的進程標識符; 自定義變量: 變量的使用: 1.變量的聲明和賦值: 1) 聲明全局變量(環境變量): export VARNAME export VARNAME=VALUE declare命令: declare - Set variable values and attributes. 格式:declare [-aAfFgilrtux] [-p] [name[=value] ...] 常用的選項: -a:聲明索引數組(如果支持) -A:聲明關聯數組(如果支持) -i:聲明整型變量 -l:聲明變量並將變量值中的字母轉換為小寫字母; -u:聲明變量並將變量值中的字母轉換為大寫字母; -r:聲明只讀變量;該變量僅能進行一次賦值操作; -x:聲明變量並將其導出為全局變量; declare -x VARNAME[=VALUE] 2) 聲明本地變量: VARNAME=VALUE 3) 聲明局部變量: local VARNAME[=VALUE] 2.查看環境變量: set命令: 查看和改變shell屬性的值及查看shell變量的變量名和變量值; export命令: 查看變量名稱,也可以為變量賦值; env命令: 3.查看變量的值: echo ${VARNAME} 4.撤銷變量的賦值及變量聲明 unset VARNAME 有關於保存變量的shell配置文件: 通用配置文件: /etc/bashrc /etc/profile /etc/profile.d/* 私人配置文件: ~/.bashrc ~/.bash_profile 註意: 1.一般情況下,變量都是隨用隨聲明,除非有必要,否則不建議修改配置文件的內容; 2.聲明的變量在使用完以後,最好使用unset命令予以撤銷;
bash變量的介紹