日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux脚本变量运算符,linux——Shell 脚本基础篇(变量类型,变量操作,定义,运算与逻辑关系)...

發(fā)布時(shí)間:2023/12/15 linux 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux脚本变量运算符,linux——Shell 脚本基础篇(变量类型,变量操作,定义,运算与逻辑关系)... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Shell 腳本基礎(chǔ)

1.變量

什么是變量

#a=1

# echo $a

1

變量:可以變化的量

1.2變量名稱注意事項(xiàng)

變量名不能以數(shù)字開頭

不能與系統(tǒng)中已有的環(huán)境變量重名,盡量不要全部使用大寫,盡量不要使用“_”下劃線開頭

最好做到見名知意

不能使用程序中的保留字,列如if,for等

1.3變量類型

字符型

數(shù)值型

整型

浮點(diǎn)型

布爾型 條件是和否

#$echo $a 引用

abc

撤銷 unset +(變量名)a

1.4變量操作

* 設(shè)置變量

* 引用變量

* 撤銷變量

單引號(hào)和雙引號(hào)的區(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 //本地變量,作用域?yàn)楫?dāng)前shell進(jìn)程,對(duì)當(dāng)前shell外的其他shell進(jìn)程,v包括當(dāng)前shell,子shell進(jìn)程均無效

local VAR_NAME=VALUE //局部變量,作用域?yàn)楫?dāng)前代碼段,常用于函數(shù)

1.5.2 環(huán)境變量

export VAR_NAME=VALUE //作用域?yàn)楫?dāng)前shell進(jìn)程及其子進(jìn)程`

1.5.3 位置變量

$1,$2,$3, .... //用來引用腳本的參數(shù)

shift [num] //位置變量使用完以后退出,后面的參數(shù)向前推進(jìn)

shift 1 一次往前推,例:$1完成任務(wù)后變成$2執(zhí)行

1.5.4 特殊變量

$# //是傳給腳本的參數(shù)個(gè)數(shù)

$0 //是腳本本身的名字

$! //是shell最后運(yùn)行的后臺(tái)Process的PID

$@ //是傳給腳本的所有參數(shù)的列表

$* //是以一個(gè)單字符串顯示所有向腳本傳遞的參數(shù),與位置變量不同,參數(shù)可超過9個(gè)

$$ //是腳本運(yùn)行的當(dāng)前進(jìn)程ID號(hào)

$? //是顯示上條命令的退出狀態(tài),0表示沒有錯(cuò)誤,其他表示有錯(cuò)誤

1.5.5 bash內(nèi)建環(huán)境變量

PATH

SHELL

UID

HISTSIZE

HOME

PWD

HISTFILE

PS1

1.5.6 只讀變量(常量)

readonly VAR_NAME=VALUE //不能修改值,不能銷毀,只能等shell進(jìn)程終止時(shí)隨之消亡

2.腳本基礎(chǔ)

2.1 什么是腳本?

按實(shí)際需要,結(jié)合命令流程控制機(jī)制實(shí)現(xiàn)的源程序。說白點(diǎn)就是命令的堆砌。`

2.2 程序返回值

程序執(zhí)行在以后有兩類返回值:

* 程序執(zhí)行的結(jié)果

* 程序狀態(tài)返回代碼(0-255)

0:正確執(zhí)行

1-255:錯(cuò)誤執(zhí)行,1,2,127系統(tǒng)預(yù)留,有特殊意義

2.3 腳本測(cè)試

bash如何測(cè)試腳本是否有錯(cuò)誤?報(bào)錯(cuò)后如何排查?

bash -n scriptname //檢`查腳本是否有語法錯(cuò)誤

bash -x scriptname //單步執(zhí)行,檢查腳本錯(cuò)在哪

2.4 寫腳本注意事項(xiàng)

* 禁止將未成功執(zhí)行過的代碼直接寫入腳本

* 腳本中的命令一定要用絕對(duì)路徑

2.5 shell算術(shù)運(yùn)算

A=3

B=6

let C=$A+$B //let 算術(shù)運(yùn)算表達(dá)式

C=$[$A+$B] //$[算術(shù)運(yùn)算表達(dá)式]

C=(($A+$B)) //$((算術(shù)運(yùn)算表達(dá)式))

C=`expr $A + $B` //expr 算術(shù)運(yùn)算表達(dá)式,表達(dá)式中各操作數(shù)及運(yùn)算符之間要有空隔,而且要使用命令引用

2.6 命令間的邏輯關(guān)系

邏輯與:&&

第一個(gè)條件為假時(shí),第二個(gè)條件不用再判斷,最終結(jié)果已經(jīng)有

第一個(gè)條件為真時(shí),第二個(gè)條件必須得判斷

邏輯或:||

前一個(gè)命令的結(jié)果為真時(shí),第二個(gè)命令就不執(zhí)行

前一個(gè)命令的結(jié)果為假時(shí),第二個(gè)命令必須執(zhí)行

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的linux脚本变量运算符,linux——Shell 脚本基础篇(变量类型,变量操作,定义,运算与逻辑关系)...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。