Shell中變量作用域的示例分析-創(chuàng)新互聯(lián)

這篇文章主要為大家展示了“Shell中變量作用域的示例分析”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“Shell中變量作用域的示例分析”這篇文章吧。

十年的王益網(wǎng)站建設(shè)經(jīng)驗(yàn),針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。營銷型網(wǎng)站的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整王益建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)公司從事“王益網(wǎng)站設(shè)計”,“王益網(wǎng)站推廣”以來,每個客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

前言

眾所周知Shell 中的變量只作用于當(dāng)前進(jìn)程。如需在子進(jìn)程中創(chuàng)建副本可使用 export 內(nèi)建命令。 有時使用臨時變量語法可以非常方便。

變量使用

  • 任何地方都可以定義 Shell 變量,使用 = 分隔變量名和變量值。= 前后不可出現(xiàn)空格,但變量的值可以留空。

  • 讀取變量需要添加$前綴。

  • 變量作用域?yàn)楫?dāng)前進(jìn)程。

例如:

url=http://harttle.com
echo $url

export 到子進(jìn)程

通常變量是不需要 export 的,但是當(dāng)你需要把一個工作分割成若個小的任務(wù), 分別用一個腳本來實(shí)現(xiàn)的時候,就需要把變量名傳遞給它們。 比如有一個 spider.sh 來獲下載任意 URL 到臨時目錄:

#!/usr/bin/env bash
curl $url > $TMPDIR/$RANDOM.html

我們需要將當(dāng)前腳本中的 url 傳遞給spider.sh:

export url=http://harttle.com
bash ./spider.sh
# 等價于(如果該文件有可執(zhí)行權(quán)限的話)
./spider.sh

值得注意的是export只會在子進(jìn)程中創(chuàng)建變量的副本,即spider.sh對它的改動不會體現(xiàn)在當(dāng)前進(jìn)程。

在當(dāng)前進(jìn)程執(zhí)行腳本

使用 source 或 . 內(nèi)建命令可以在當(dāng)前進(jìn)程執(zhí)行另一個腳本,因此當(dāng)前上下文的變量對該腳本是可見的。

url=http://harttle.com

source ./spider.sh
# 等價于
. ./spider.sh

臨時設(shè)置環(huán)境變量

根據(jù) Shell 語法,在一個簡單命令前可以包含任意個賦值語句。這些變量賦值將會在執(zhí)行命令前展開,等效于臨時的環(huán)境變量。

A “simple command” is a sequence of optional variable assignments and redirections, in any sequence, optionally followed by words and redirections, terminated by a control operator. – Simple Commands, Shell Commands


例如下面命令可以把url變量傳遞給spider.sh:

url=http://harttle.com bash ./spider.sh

這是一條 簡單命令,下面的多條命令或 組合命令:

url=http://harttle.com; bash ./spider.sh   # 兩條命令,只作用于當(dāng)前進(jìn)程
url=http://harttle.com && bash ./spider.sh  # 組合命令,只作用于當(dāng)前進(jìn)程
export url=http://harttle.com; bash ./spider.sh # 兩條命令,作用于父子進(jìn)程

簡單命令中的變量賦值也不作用于當(dāng)前進(jìn)程。例如下面的代碼將會輸出空行:

url=http://harttle.com echo $url

以上是“Shell中變量作用域的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

網(wǎng)站題目:Shell中變量作用域的示例分析-創(chuàng)新互聯(lián)
文章起源:http://muchs.cn/article24/dsihje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、微信小程序、網(wǎng)站收錄、用戶體驗(yàn)、面包屑導(dǎo)航、App開發(fā)

廣告

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

h5響應(yīng)式網(wǎng)站建設(shè)