最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

shell中的source命令的巧妙用法

 更新時(shí)間:2023年08月01日 11:26:06   作者:linux_c_coding_man  
這篇文章主要介紹了shell中的source命令的巧妙用法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

首先,通常用于重新執(zhí)行剛修改的初始化文件,使之立即生效,而不必注銷并重新登錄。例如,當(dāng)我們修改了/etc/profile文件,并想讓它立刻生效,而不用重新登錄,就可以使用source命令,如source /etc/profile。 

其次,source filepath或者. filepath,sh filepath或者./filepath區(qū)別:

1. sh filepath會(huì)重新建立一個(gè)子shell,在子shell中執(zhí)行腳本里面的語(yǔ)句,該子shell繼承父shell的環(huán)境變量,但子shell是新建的,其改變的變量不會(huì)被帶回父shell,除非使用export。

2. source filename其實(shí)只是簡(jiǎn)單地讀取腳本里面的語(yǔ)句依次在當(dāng)前shell里面執(zhí)行,沒有建立新的子shell。那么腳本里面所有新建、改變變量的語(yǔ)句都會(huì)保存在當(dāng)前shell里面。

因?yàn)椴粫?huì)建立新的子shell,變量的值都可以直接取到,我們看一個(gè)例子:

這里寫圖片描述

我們可以把下面的這些配置當(dāng)成shell腳本中的賦值語(yǔ)句,然后使用source獲取變量的值,因?yàn)檫@個(gè)配置不符合任何ini之類格式,所以不好用程序獲?。?/p>

這里寫圖片描述

這里用到了&&,它的作用是左邊的命令執(zhí)行成功,才執(zhí)行右邊的命令;||就相反,左邊的命令執(zhí)行失敗,才執(zhí)行右邊的命令。

2>/dev/nul下面看下內(nèi)容詳情

標(biāo)準(zhǔn)輸入0    從鍵盤獲得輸入 /proc/self/fd/0

標(biāo)準(zhǔn)輸出1    輸出到屏幕(即控制臺(tái)) /proc/self/fd/1

錯(cuò)誤輸出2    輸出到屏幕(即控制臺(tái)) /proc/self/fd/2

/dev/null代表linux的空設(shè)備文件,所有往這個(gè)文件里面寫入的內(nèi)容都會(huì)丟失,俗稱“黑洞”

1. 2>/dev/null意思就是把錯(cuò)誤輸出到“黑洞”

2. >/dev/null 2>&1默認(rèn)情況是1,也就是等同于1>/dev/null 2>&1。意思就是把標(biāo)準(zhǔn)輸出重定向到“黑洞”,還把錯(cuò)誤輸出2重定向到標(biāo)準(zhǔn)輸出1,也就是標(biāo)準(zhǔn)輸出和錯(cuò)誤輸出都進(jìn)了“黑洞”

3. 2>&1 >/dev/null意思就是把錯(cuò)誤輸出2重定向到標(biāo)準(zhǔn)出書1,也就是屏幕,標(biāo)準(zhǔn)輸出進(jìn)了“黑洞”,也就是標(biāo)準(zhǔn)輸出進(jìn)了黑洞,錯(cuò)誤輸出打印到屏幕

關(guān)于這里”&”的作用,我們可以這么理解2>/dev/null重定向到文件,那么2>&1,這里如果去掉了&就是把錯(cuò)誤輸出給了文件1了,用了&是表明1是標(biāo)準(zhǔn)輸出。

總結(jié)

以上所述是小編給大家介紹的shell中的source命令的巧妙用法,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

最新評(píng)論

宣汉县| 东辽县| 淮阳县| 治县。| 大庆市| 苍梧县| 乌苏市| 中超| 华安县| 海丰县| 托里县| 电白县| 通化市| 德惠市| 赣榆县| 易门县| 红原县| 从化市| 宜宾县| 永顺县| 电白县| 东海县| 安新县| 瑞丽市| 商洛市| 广河县| 美姑县| 平阴县| 黄浦区| 新疆| 通许县| 大同县| 曲麻莱县| 玉树县| 湖南省| 宁海县| 布拖县| 任丘市| 汕尾市| 裕民县| 保康县|