linux脚本变量运算符,linux——Shell 脚本基础篇(变量类型,变量操作,定义,运算与逻辑关系)...
Shell 腳本基礎(chǔ)
1.變量
什么是變量
#a=1
# echo $a
1
變量:可以變化的量
1.2變量名稱注意事項
變量名不能以數(shù)字開頭
不能與系統(tǒng)中已有的環(huán)境變量重名,盡量不要全部使用大寫,盡量不要使用“_”下劃線開頭
最好做到見名知意
不能使用程序中的保留字,列如if,for等
1.3變量類型
字符型
數(shù)值型
整型
浮點型
布爾型 條件是和否
#$echo $a 引用
abc
撤銷 unset +(變量名)a
1.4變量操作
* 設(shè)置變量
* 引用變量
* 撤銷變量
單引號和雙引號的區(qū)別
#echo $a
1
#echo '$a'
'$a'
#echo "$a"
1
#echo {$a}b
1b
定義
轉(zhuǎn)義符 \ 還原
#!/bin/bash 程序執(zhí)行腳本
1.5bash變量類型
* 環(huán)境變量
* 本地變量 (局部變量)
* 位置變量
* 特殊變量(bash內(nèi)置的,用來保存某些特殊數(shù)據(jù)的變量,也稱系統(tǒng)變量)
1.5.1 本地變量
VAR_NAME=VALUE //本地變量,作用域為當(dāng)前shell進程,對當(dāng)前shell外的其他shell進程,v包括當(dāng)前shell,子shell進程均無效
local VAR_NAME=VALUE //局部變量,作用域為當(dāng)前代碼段,常用于函數(shù)
1.5.2 環(huán)境變量
export VAR_NAME=VALUE //作用域為當(dāng)前shell進程及其子進程`
1.5.3 位置變量
$1,$2,$3, .... //用來引用腳本的參數(shù)
shift [num] //位置變量使用完以后退出,后面的參數(shù)向前推進
shift 1 一次往前推,例:$1完成任務(wù)后變成$2執(zhí)行
1.5.4 特殊變量
$# //是傳給腳本的參數(shù)個數(shù)
$0 //是腳本本身的名字
$! //是shell最后運行的后臺Process的PID
$@ //是傳給腳本的所有參數(shù)的列表
$* //是以一個單字符串顯示所有向腳本傳遞的參數(shù),與位置變量不同,參數(shù)可超過9個
$$ //是腳本運行的當(dāng)前進程ID號
$? //是顯示上條命令的退出狀態(tài),0表示沒有錯誤,其他表示有錯誤
1.5.5 bash內(nèi)建環(huán)境變量
PATH
SHELL
UID
HISTSIZE
HOME
PWD
HISTFILE
PS1
1.5.6 只讀變量(常量)
readonly VAR_NAME=VALUE //不能修改值,不能銷毀,只能等shell進程終止時隨之消亡
2.腳本基礎(chǔ)
2.1 什么是腳本?
按實際需要,結(jié)合命令流程控制機制實現(xiàn)的源程序。說白點就是命令的堆砌。`
2.2 程序返回值
程序執(zhí)行在以后有兩類返回值:
* 程序執(zhí)行的結(jié)果
* 程序狀態(tài)返回代碼(0-255)
0:正確執(zhí)行
1-255:錯誤執(zhí)行,1,2,127系統(tǒng)預(yù)留,有特殊意義
2.3 腳本測試
bash如何測試腳本是否有錯誤?報錯后如何排查?
bash -n scriptname //檢`查腳本是否有語法錯誤
bash -x scriptname //單步執(zhí)行,檢查腳本錯在哪
2.4 寫腳本注意事項
* 禁止將未成功執(zhí)行過的代碼直接寫入腳本
* 腳本中的命令一定要用絕對路徑
2.5 shell算術(shù)運算
A=3
B=6
let C=$A+$B //let 算術(shù)運算表達(dá)式
C=$[$A+$B] //$[算術(shù)運算表達(dá)式]
C=(($A+$B)) //$((算術(shù)運算表達(dá)式))
C=`expr $A + $B` //expr 算術(shù)運算表達(dá)式,表達(dá)式中各操作數(shù)及運算符之間要有空隔,而且要使用命令引用
2.6 命令間的邏輯關(guān)系
邏輯與:&&
第一個條件為假時,第二個條件不用再判斷,最終結(jié)果已經(jīng)有
第一個條件為真時,第二個條件必須得判斷
邏輯或:||
前一個命令的結(jié)果為真時,第二個命令就不執(zhí)行
前一個命令的結(jié)果為假時,第二個命令必須執(zhí)行
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的linux脚本变量运算符,linux——Shell 脚本基础篇(变量类型,变量操作,定义,运算与逻辑关系)...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python xml转excel_一个p
- 下一篇: linux把硬盘当内存,把内存当硬盘使,