国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Shell腳本——變量

這篇具有很好參考價值的文章主要介紹了Shell腳本——變量。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

目錄

一.Shell腳本的變量基本介紹

1.Shell腳本的變量是什么?

2.變量的作用

3.變量作用范圍

4.刪除變量

二.變量的類型

1.自定義變量

1.1 命名要求

1.2 定義新的變量

1.3?查看定義的變量的值

1.4 賦值時使用符號

1.5 從鍵盤輸入內(nèi)容為變量賦值

2.環(huán)境變量

3.只讀變量

4.位置變量

5.預(yù)定義變量

三.整數(shù)變量的運(yùn)算


一.Shell腳本的變量基本介紹

1.Shell腳本的變量是什么?

變量是計算機(jī)語言中能儲存計算結(jié)果或能表示值的抽象概念。保存將來會變化的數(shù)據(jù),即使數(shù)據(jù)變

化,直接調(diào)用變量即可。

Shell 變量用來存放系統(tǒng)和用戶需要使用的特定參數(shù)(值),而且這些參數(shù)可以根據(jù)用戶的設(shè)定或

系統(tǒng)環(huán)境的變化而相應(yīng)變化。通過使用變量,Shell 程序能夠提供更加靈活的功能,適應(yīng)性更強(qiáng)。

2.變量的作用

用來存放系統(tǒng)和用戶需要使用的特定參數(shù)(值)

  • 變量名:使用固定的名稱,由系統(tǒng)預(yù)設(shè)或用戶定義

  • 變量值:能夠根據(jù)用戶設(shè)置、系統(tǒng)環(huán)境的變化而變化

3.變量作用范圍

  • 默認(rèn)情況下,新定義的變量只在當(dāng)前的Shell環(huán)境中有效,因此稱為局部變量。當(dāng)進(jìn)入子程序或新的子Shell環(huán)境時局部變量將無法再使用。

  • 可以通過內(nèi)部命令export將指定的變量導(dǎo)出為全局變量,使用戶定義的變量在所有的子Shell環(huán)境中能夠繼續(xù)使用。

格式:
export 變量名=變量值

3.1 臨時設(shè)置

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器

3.2 永久設(shè)置,需要在/etc/profile文件里添加

vim /etc/profile
export PATH+=:/mnt
[root@localhost data]#source /etc/profile
[root@localhost data]#echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/data:/mnt

4.刪除變量

格式:

unset 變量名

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器

二.變量的類型

  • 自定義變量:由用戶自己定義、修改和使用

  • 特殊變量:環(huán)境變量,只讀變量,位置變量,預(yù)定義變量

環(huán)境變量:由系統(tǒng)維護(hù),用于設(shè)置工作環(huán)境
只讀變量:只可以讀取不可以更改
位置變量:通過命令行給腳本傳遞參數(shù)
預(yù)定義變量:Bash中內(nèi)置的一類變量,不能修改??? 有些規(guī)定好的變量 放在那里讓你使用

1.自定義變量

1.1 命名要求

  • 區(qū)分大小寫

  • 不能使程序中的保留字和內(nèi)置變量:如:if, for,hostname 命令?

  • 只能使用數(shù)字、字母及下劃線,且不能以數(shù)字開頭

  • 不要使用內(nèi)置的變量,使用英文盡量使用詞義通俗易懂,PATH

  • 大駝峰 StudentFirstName

  • 小駝峰 studentFirstName

  • 下劃線 student_name

1.2 定義新的變量

格式:

變量名=變量值?

1.3?查看定義的變量的值

格式:

echo $變量名

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器

1.4 賦值時使用符號

  • 雙引號:允許通過$符號引用其他變量值

  • 單引號:禁止引用其他變量值, $視為普通字符

  • 反撇號:命令替換,提取命令執(zhí)行后的輸出結(jié)果,``和$(…)作用相同

  • {}:分隔變量值

  • 定義變量時中間有特殊字符,如空格,可以使用單引號或雙引號

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器

1.5 從鍵盤輸入內(nèi)容為變量賦值

方法一:
read -p “提示信息” 變量名

方法二:
#!/bin/bash
echo -n "提示信息:"
read 變量名

方法一:

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器

方法二:

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器

2.環(huán)境變量

  • 使用 env 命令可以查看到當(dāng)前工作環(huán)境下的環(huán)境變量

  • 配置文件:/etc/profile(全局生效)、~/.bash_profile(當(dāng)前用戶環(huán)境)

  • 可以使子進(jìn)程(包括孫子進(jìn)程)繼承父進(jìn)程的變量,但是無法讓父進(jìn)程使用子進(jìn)程的變量

  • 一旦子進(jìn)程修改從父進(jìn)程繼承的變量,將會新的值傳遞給孫子進(jìn)程

  • 一般只在系統(tǒng)配置文件中使用,在腳本中較少使用

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器

2.1 常用環(huán)境變量

  • $USER 表示用戶名稱
  • $HOME 表示用戶的宿主目錄
  • $LANG 表示語言和字符集
  • $PWD 表示當(dāng)前所在工作目錄
  • $PATH 表示可執(zhí)行用戶程序的默認(rèn)路徑

2.2 設(shè)置系統(tǒng)根據(jù)環(huán)境變量自動設(shè)置可執(zhí)行程序

echo $PATH						#查看當(dāng)前搜索路徑
PATH="$PATH:/root"				#將/root目錄添加到搜索路徑
export PATH="$PATH:/root"		#輸出為全局環(huán)境變量

設(shè)置永久有效:
echo 'export PATH=$PATH:/root' >> /etc/profile			#將全局環(huán)境變量追加到/etc/profile中

3.只讀變量

readonly命令用于定義只讀shell變量和shell函數(shù)。readonly命令的選項-p可以輸出顯示系統(tǒng)中所有定義的只讀變量。

格式:

readonly [選項] [參數(shù)]

  • 變量值不允許修改(重新賦值)的情況
  • 無法使用 unset 刪除
  • 最快方法重啟

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器

4.位置變量

  • 當(dāng)執(zhí)行命令行操作時,第一個字段表示命令名或腳本程序名,其余的字符串參數(shù)按照從左到右的順序依次賦值給位置變量。
  • $n: n為數(shù)字,$0代表命令本身,$1- $9代表帶一個到第九個參數(shù),十以上的參數(shù)需要使用大括號表示,比如第十個參數(shù)為${10}

示例腳本1:輸出對應(yīng)位置內(nèi)容(第2、5、10個內(nèi)容)

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器

示例腳本2:使用位置變量進(jìn)行加法運(yùn)算

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器

5.預(yù)定義變量

?系統(tǒng)直接定義好的變量,直接使用即可

$* 表示所有位置參數(shù)的內(nèi)容看成一個整體返回
$@ 表示所有位置參數(shù)的內(nèi)容分割成n份,每份作為一個獨(dú)立的個體返回

$?

表示前一條命令執(zhí)行后的返回狀態(tài),返回值為 0 表示執(zhí)行正確,返回任何非 0值均表示執(zhí)行出現(xiàn)異常
$# 表示命令行中位置參數(shù)的總個數(shù)
$0 表示當(dāng)前執(zhí)行的腳本或程序的名稱 即當(dāng)前腳本的名字
$$ 當(dāng)前進(jìn)程ID
$! 后臺任務(wù)最后一個ID

三.整數(shù)變量的運(yùn)算

(shell默認(rèn)只支持整數(shù)的運(yùn)算)

  • 格式:expr 變量1 運(yùn)算符 變量2 [運(yùn)算符 變量3]
  • 運(yùn)算符:+ 加法、-減法、\*乘法、/除法、%取余
  • 常見的運(yùn)算表達(dá)式:(result代表自定義變量,可用任意代替)
    • result=$(expr 變量1 運(yùn)算符 變量2)
    • result=$((變量1 運(yùn)算符 變量2))
    • result=$[變量1 運(yùn)算符 變量2]
    • let result=變量1 運(yùn)算符 變量2
    • i++ 相當(dāng)于 i=$[$i + 1]? ? ? ? i++是先賦值再運(yùn)算
    • i--? ?相當(dāng)于 i=$[$i - 1]?
    • i+=1相當(dāng)于i=$[$i + 1]

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器

舉例如下:(a=10,b=20)

公式:result=$(expr 變量1 運(yùn)算符 變量2)

數(shù)字運(yùn)算:i=$(expr 10 \* 20 )

變量運(yùn)算:i=$(expr $a?\* $b?)

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器

公式:result=$((變量1 運(yùn)算符 變量2))

數(shù)字運(yùn)算:e=$(( 10 * 20 ))

變量運(yùn)算:e=$(( $a * $b?))

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器

公式:result=$[變量1 運(yùn)算符 變量2]

數(shù)字運(yùn)算:j=$[ 10 * 20 ]

變量運(yùn)算:j=$[ $a * $b?]

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器

公式:let result=變量1 運(yùn)算符 變量2

數(shù)字運(yùn)算:let m=10*20

變量運(yùn)算:let m=$a*$b

shell腳本變量,Shell腳本,linux,運(yùn)維,服務(wù)器文章來源地址http://www.zghlxwxcb.cn/news/detail-721952.html

到了這里,關(guān)于Shell腳本——變量的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 服務(wù)器的shell腳本

    服務(wù)器的shell腳本

    shell腳本語句可以執(zhí)行l(wèi)inux的操作語句。 linux相當(dāng)于網(wǎng)頁,shell相當(dāng)于java??梢越忉尵帉憟?zhí)行邏輯。 shell的開頭以:#!bin/sh 定義解析方式,不同的linuxe內(nèi)核解釋方式不同。大多數(shù)內(nèi)核支持sh(bash)方式。 執(zhí)行sh文件可以有多種方式: ? ? ? ? ? ? sh?a.sh ????????bash a.sh ??

    2024年02月14日
    瀏覽(45)
  • Shell腳本常用命令及如何通過shell腳本實現(xiàn)服務(wù)器上文件的上傳和下載

    Shell腳本常用命令 簡介 1、什么是shell: Shell 是一個用 C 語言編寫的應(yīng)用程序,這個應(yīng)用程序提供了一個界面,用戶通過這個界面訪問操作系統(tǒng)內(nèi)核的服務(wù)。Shell 腳本(shell script),是一種為 shell 編寫的腳本程序,擴(kuò)展名為.sh。 2、如何編寫shell腳本: 文本編輯器(可以使用

    2024年02月03日
    瀏覽(32)
  • shell腳本使用(宿主機(jī)windows-服務(wù)器-centos)--用于使用shell腳本方式控制docker容器

    shell腳本使用(宿主機(jī)windows-服務(wù)器-centos)--用于使用shell腳本方式控制docker容器

    需求: 我想要使得windows上編寫shell腳本,并且在這個shell腳本在linux中也可用 shell腳本在windows上無法直接運(yùn)行,但是有WSL這個linux子系統(tǒng)的工具 可以使得shell腳本在主機(jī)上執(zhí)行 視頻講解連接 方式1 方式2

    2024年02月07日
    瀏覽(61)
  • shell腳本實現(xiàn)刪除服務(wù)器指定目錄下文件方法

    上述腳本中,find 命令用于查找指定目錄下4天以前的文件,并將其刪除。其中,-type f 表示只查找普通文件,不包括目錄和符號鏈接等其他類型的文件;-mtime +3 表示查找修改時間早于3天前的文件;-delete 表示刪除查找到的文件。 腳本中的 $folder_path 可以替換為實際的目錄路徑

    2023年04月19日
    瀏覽(23)
  • 在SHELL腳本中用curl處理服務(wù)器開機(jī)、關(guān)機(jī)、強(qiáng)制關(guān)機(jī)、重啟動作

    思路:利用了一張主控板來獲取服務(wù)器的開關(guān)機(jī)狀態(tài),開關(guān)機(jī)其實是給服務(wù)器一個500ms~1000ms的脈沖,等同與按了機(jī)箱面板的開關(guān)機(jī)按鈕開關(guān)。

    2024年02月07日
    瀏覽(35)
  • 實現(xiàn)判斷服務(wù)器是否有g(shù)it并拉取代碼的shell腳本

    判斷當(dāng)前服務(wù)器是否有g(shù)it,沒有的話使用yum install安裝,然后切換至普通用戶,創(chuàng)建目錄,并且進(jìn)入新創(chuàng)建的目錄,git clone代碼

    2024年02月10日
    瀏覽(28)
  • shell 腳本統(tǒng)計 http 文件服務(wù)器下指定目錄及其子目錄下所有文件的大小

    shell腳本如下: 首先 vi calculate_size.sh 寫入下入內(nèi)容 執(zhí)行 sh calculate_size.sh http://example.com/some/dir/ 即可統(tǒng)計 http 文件服務(wù)器http://example.com/some/dir/ 中 dir 目錄及其子目錄下所有文件的大小。

    2024年02月15日
    瀏覽(30)
  • Linux&Shell--多服務(wù)器自動登錄連接

    sshpass 是一個命令行工具,用于自動化SSH密碼認(rèn)證。它通常在腳本或自動化任務(wù)中使用,其中您需要提供密碼以建立SSH連接,而無需用戶干預(yù)??梢灾苯訉⒚艽a作為命令行參數(shù)或通過文件提供,以便在建立SSH連接時自動輸入密碼。這對于需要自動化處理SSH連接的任務(wù)非常有用

    2024年02月03日
    瀏覽(24)
  • Linux:Shell腳本和Shell變量的入門指南

    [外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-Z05Ey0Tt-1687331750572)(https://example.com/linux-shell-image.png)] Shell腳本是一種用于自動化任務(wù)和批處理的腳本語言,主要用于Unix和Linux系統(tǒng)。它提供了一種簡單而強(qiáng)大的方式來執(zhí)行系統(tǒng)命令、處理文件、控制流

    2024年02月10日
    瀏覽(29)
  • shell腳本之003獲取固定時間段(分鐘)內(nèi)的日志,并將其定時通過sftp上傳至服務(wù)器中

    #!/bin/bash export PATH=/home/ccbt/software/lftp-4.9.2/usr/local/bin/:$PATH # 獲取當(dāng)前系統(tǒng)時間 now=$(date +\\\"%Y/%m/%d %H:%M:%S\\\") echo \\\"當(dāng)前日期時間:$now\\\" # 當(dāng)前時間戳 now_time=$(date +%s) echo \\\"當(dāng)前時間戳:$now_time\\\" #獲取指定開始時間的時間戳 10分鐘 time_befo=$(($now_time-600)) echo \\\"指定開始時間戳: $time_befo\\\"

    2024年02月01日
    瀏覽(22)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包