shell編程中如何分析bash變量-創(chuàng)新互聯(lián)

本篇文章為大家展示了shell編程中如何分析bash變量,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

專注于為中小企業(yè)提供成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)興縣免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上1000家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
導(dǎo)讀shell編程--bash變量介紹 ,變量是計(jì)算機(jī)內(nèi)存的單元,其中存放的值可以改變。當(dāng) Shell  腳本需要保存一些信息時(shí),如一個(gè)文件名或一個(gè)數(shù)字,就把它存放在一個(gè)變量中。

bash變量類型

  • 本地變量

本地變量的作用域?yàn)檎麄€(gè)bash進(jìn)程。局部變量屬于本地變量。在bash中聲明變量的周期隨著該進(jìn)程的周期而存在。
定義本地變量:set VARNAME=Jerry
引用變量:${VARNAME},括號(hào)可省略
局部變量的聲明:local VARNAME=VALUE
  • 環(huán)境變量

環(huán)境變量的作用域?yàn)楫?dāng)前shell進(jìn)程及其子進(jìn)程聲明:export VARNAME=VALUE或者VARNAME=VALUE; export VARNAME腳本在執(zhí)行時(shí)會(huì)啟動(dòng)一個(gè)子shell進(jìn)程命令行中啟動(dòng)的腳本會(huì)繼承當(dāng)前shell的環(huán)境變量系統(tǒng)自動(dòng)執(zhí)行的腳本(非命令行啟動(dòng))就需要自我定義需要各環(huán)境變量
  • 位置變量

$1, $2, ...shift: 對參數(shù)進(jìn)行輪換,默認(rèn)輪換一個(gè)參數(shù)#!/bin/bash#echo $1shiftecho $1shiftecho $1shift./filetest.sh /etc/fstab /etc/inittab    $1:/etc/fstab 
    $2:/etc/inittab
  • 特殊變量

$?: 上一個(gè)命令執(zhí)行狀態(tài)的返回值
    程序執(zhí)行,可能有兩類返回值:
        程序執(zhí)行結(jié)果
        程序狀態(tài)返回代碼(0-255)            0: 正確執(zhí)行            1-255: 錯(cuò)誤執(zhí)行。1、2、127系統(tǒng)預(yù)留$#: 參數(shù)的個(gè)數(shù)$*: 參數(shù)列表$@: 參數(shù)列表

變量的撤銷及查看

  • 撤銷變量

unset VARNAME
  • 查看變量

set: 查看當(dāng)前shell中的變量(包括環(huán)境變量和本地變量)
printenv、env、export: 查看當(dāng)前shell中的環(huán)境變量

變量命名規(guī)則

1、變量與變量內(nèi)容以一個(gè)等號(hào)"="來連接,如下所示:
    MyName=Dabric
2、等號(hào)兩邊不能直接接空格符,如下錯(cuò)誤:
    MyName= Dabric 或 Myname=Dab ric
3、變量名稱只能是英文字母與數(shù)字,但是開頭字符不能時(shí)數(shù)字;
4、變量內(nèi)容若有空格符可使用雙引號(hào)或單引號(hào)將變量內(nèi)容結(jié)合起來,但雙引號(hào)內(nèi)的特殊字符如$等,可以保有原本的特性,如下所示:
    var="lang is $LANG" 則echo $var 可得 lang is en_US.UTF-8
單引號(hào)內(nèi)的特殊字符則僅為一般字符(純文本),如下所示:
    var='lang is $LANG' 則echo $var 可得 lang is $LANG
    總之在bash中:    "":弱引用,可以實(shí)現(xiàn)變量替換    '':強(qiáng)引用,不完成變量替換
5、可以使用跳脫字符"\"將特殊字符(如[ENTER], $, \, 空格符, '等)變成一般字符,如:
    MyName=Dab\ ric
6、在一串指令的執(zhí)行中,還需要藉由其他額外的指令所提供的信息時(shí),可以使用反引號(hào)"`COMMAND`"或"$(COMMAND)"。例如想要取得核心版本的設(shè)定:
    version=$(uname -r) 
    echo $version如何進(jìn)入到您目前核心的模塊目錄:
    # cd /lib/modules/`uname -r`/kernel
    # cd /lib/moudles/$(uname -r)/kernel
7、若改變量為擴(kuò)增變量內(nèi)容時(shí),則可用"$變量名稱"或${變量}累加內(nèi)容,如下所示:
    PATH="$PATH":/home/bin 或 PATH=${PATH}:/home/bin
8、若該變量需要在其他子程序執(zhí)行,則需要以export來使變量變成環(huán)境變量:
    # export PATH
9、通常大寫字符為系統(tǒng)默認(rèn)變量,自行設(shè)定變量可以使用小寫字符,方便判斷;
10、取消變量的方法為使用unset:"unset 變量名稱"例如取消MyName的設(shè)定:
    # unset MyName
變量可以在bash配置文件(~/.bashrc)中直接指定,保證每次登錄shell該變量都存在

上述內(nèi)容就是shell編程中如何分析bash變量,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道。

文章名稱:shell編程中如何分析bash變量-創(chuàng)新互聯(lián)
網(wǎng)頁URL:http://bm7419.com/article18/dihhgp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷商城網(wǎng)站、響應(yīng)式網(wǎng)站、面包屑導(dǎo)航、搜索引擎優(yōu)化、微信公眾號(hào)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)