即使加上$符,也只能在當(dāng)前shell里面刪除父進程繼承下來的變量,但是對父進程是不會影響的。通過env環(huán)境變量查看命令可以看到。
也就是說,定義一個環(huán)境變量(全局變量),它的子進程都會通過fork函數(shù)享有這個變量所在的內(nèi)存區(qū)。如果在子進程中unset了這個變量,子進程中就會釋放該內(nèi)存。但是對父進程是不會有影響的。exit子進程后,通過env還會看到先前定義的環(huán)境變量。在bash一個子進程,會發(fā)現(xiàn)又繼承里父進程的環(huán)境變量。。是因為不是同一個子進程。通過echo $$可以看當(dāng)前bash pid號。
就像一父親生了兩個兒子。都會繼承了父親的優(yōu)良基因。大兒子卻做了個小手術(shù),導(dǎo)致不是兒子了。小兒子沒動根
也就是說,定義一個環(huán)境變量(全局變量),它的子進程都會通過fork函數(shù)享有這個變量所在的內(nèi)存區(qū)。如果在子進程中unset了這個變量,子進程中就會釋放該內(nèi)存。但是對父進程是不會有影響的。exit子進程后,通過env還會看到先前定義的環(huán)境變量。在bash一個子進程,會發(fā)現(xiàn)又繼承里父進程的環(huán)境變量。。是因為不是同一個子進程。通過echo $$可以看當(dāng)前bash pid號。
就像一父親生了兩個兒子。都會繼承了父親的優(yōu)良基因。大兒子卻做了個小手術(shù),導(dǎo)致不是兒子了。小兒子沒動根
2016-06-21
已采納回答 / 小呀么小二郎呀
shell(計算機殼層)在計算機科學(xué)中,Shell俗稱殼(用來區(qū)別于核),是指“提供使用者使用界面”的軟件(命令解析器)。它類似于DOS下的command和后來的cmd.exe。它接收用戶命令,然后調(diào)用相應(yīng)的應(yīng)用程序。基本上shell分兩大類:一:圖形界面shell(Graphical User Interface shell 即 GUI shell)例如:應(yīng)用最為廣泛的 Windows Explorer (微軟的windows系列操作系統(tǒng)),還有也包括廣為人知的 Linux shell,其中l(wèi)inux?...
2016-06-20
媽蛋,我完蛋了,我把PATH="PATH":/root了,把中間那個$沒加,,結(jié)果echo $PATH的時候成這樣了[root@localhost ~]# echo $PATH
PATH:/root
PATH下只剩/root了,其他保存命令的文件夾都不見了
PATH:/root
PATH下只剩/root了,其他保存命令的文件夾都不見了
2016-05-30
最新回答 / 大草同學(xué)
米刀文已經(jīng)給出了一種解釋:“因為set的輸出很長,可以使用set | more命令查看”。出來的東西,前面的內(nèi)容一樣,后面的就是這些函數(shù)代碼了。可能是內(nèi)核版本的關(guān)系。
2016-05-27