新聞中心
在Linux系統(tǒng)中,環(huán)境變量是非常常見(jiàn)的一種配置方式。在編寫(xiě)腳本或者啟動(dòng)程序時(shí),我們經(jīng)常需要設(shè)置環(huán)境變量來(lái)控制程序的行為。然而,由于環(huán)境變量的設(shè)計(jì)特性,它們有可能會(huì)被其他程序或者腳本覆蓋,導(dǎo)致程序無(wú)法正常運(yùn)行。本文將介紹Linux系統(tǒng)中環(huán)境變量的覆蓋問(wèn)題及解決方法。

成都創(chuàng)新互聯(lián)公司是一家專注于成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)與策劃設(shè)計(jì),陽(yáng)新網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)10年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:陽(yáng)新等地區(qū)。陽(yáng)新做網(wǎng)站價(jià)格咨詢:028-86922220
1. 環(huán)境變量的查找順序
在Linux系統(tǒng)中,環(huán)境變量的查找順序是相對(duì)固定的。一般來(lái)說(shuō),程序所使用的環(huán)境變量會(huì)按照以下順序進(jìn)行查找:
1) 命令行參數(shù)中的變量
2) 環(huán)境變量文件中的變量
3) Shell的環(huán)境變量
4) Shell啟動(dòng)時(shí)默認(rèn)的環(huán)境變量
如果環(huán)境變量在前面的位置被找到了,后面的位置就不會(huì)再進(jìn)行查找了。這也就是說(shuō),如果前面的程序已經(jīng)設(shè)置了某個(gè)環(huán)境變量,那么后面的程序就不能再覆蓋它了。
2. 環(huán)境變量被覆蓋的情況
在Linux系統(tǒng)中,環(huán)境變量被覆蓋的情況有很多。下面我們將介紹幾種常見(jiàn)的情況。
1) 使用source命令
在Linux系統(tǒng)中,source命令用于加載指定的腳本文件,并將其解釋為當(dāng)前shell會(huì)話的一部分。如果腳本文件中存在環(huán)境變量的設(shè)置,那么這些環(huán)境變量就會(huì)被當(dāng)前shell會(huì)話覆蓋。
2) 使用export命令
在Linux系統(tǒng)中,export命令用于將Shell的環(huán)境變量導(dǎo)出到當(dāng)前進(jìn)程中。如果另外一個(gè)Shell進(jìn)程執(zhí)行了同樣的命令,它就會(huì)覆蓋當(dāng)前進(jìn)程的環(huán)境變量。
3) 同名環(huán)境變量的覆蓋
如果兩個(gè)程序或腳本都設(shè)置了同名的環(huán)境變量,那么后面的程序或腳本就會(huì)覆蓋前面的程序或腳本設(shè)置的環(huán)境變量。這種情況下,我們可以通過(guò)修改腳本或程序的代碼,避免出現(xiàn)同名的環(huán)境變量。
3. 解決方法
為了解決Linux系統(tǒng)中環(huán)境變量的覆蓋問(wèn)題,我們需要以下幾種方法:
1) 使用別名
在Linux系統(tǒng)中,我們可以使用別名的方式來(lái)避免同名的環(huán)境變量被覆蓋。我們可以給每個(gè)環(huán)境變量都加上一個(gè)唯一標(biāo)識(shí)符,這樣就能避免出現(xiàn)同名的環(huán)境變量。例如,我們可以將JAVA_HOME改成X_JAVA_HOME,這樣就能避免被覆蓋了。
2) 使用export命令
如果我們想要在不同的Shell進(jìn)程之間共享環(huán)境變量,我們可以使用export命令。在設(shè)置環(huán)境變量時(shí),我們可以將其設(shè)置為全局變量,這就能避免被其他程序或腳本所覆蓋。
3) 將環(huán)境變量寫(xiě)入腳本文件
在Linux系統(tǒng)中,我們可以將環(huán)境變量的設(shè)置寫(xiě)入腳本文件中。這樣,每次執(zhí)行腳本時(shí),都會(huì)先將腳本中的環(huán)境變量設(shè)置生效。這種方法能夠避免其他程序或腳本的環(huán)境變量對(duì)我們的腳本產(chǎn)生影響。
在Linux系統(tǒng)中,環(huán)境變量的設(shè)置和使用非常廣泛。但是,由于環(huán)境變量的設(shè)計(jì)特性,它們有可能會(huì)被其他程序或者腳本覆蓋,導(dǎo)致程序無(wú)法正常運(yùn)行。本文介紹了Linux系統(tǒng)中環(huán)境變量的查找順序以及常見(jiàn)的環(huán)境變量覆蓋問(wèn)題的解決方法。希望本文能夠幫助讀者更好地掌握Linux環(huán)境變量的使用。
成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián)為您提供網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁(yè)設(shè)計(jì)及定制高端網(wǎng)站建設(shè)服務(wù)!
linux jdk環(huán)境變量要配置嗎
linux
jdk環(huán)境變量要配置
linux下配置JDK環(huán)境變量
用文本編輯器打開(kāi)/etc/profile,命令vi
/etc/profile
在profile文件末尾加入:
export
JAVA_HOME=/usr/share/jdk1.6.0_14
export
PATH=$JAVA_HOME/bin:$PATH
export
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
重新登錄
說(shuō)明:老戚
a.
你要將
/usr/share/jdk1.6.0_14改為你的jdk安裝目錄
b.
linux下用冒號(hào)“:”來(lái)分隔路徑
c.
$PATH
/
$CLASSPATH
/
$JAVA_HOME
是用來(lái)引用原來(lái)的環(huán)境變量的值
在設(shè)置環(huán)境變量時(shí)特別要注意不能把原來(lái)的值給覆蓋掉戚卜了,這是一種常見(jiàn)的錯(cuò)誤。
d.
CLASSPATH中當(dāng)前目錄“.”不能丟,把當(dāng)前目錄丟掉也是常見(jiàn)的錯(cuò)誤。
e.
export是把這三個(gè)變量導(dǎo)出為全局變量。
f.
大小寫(xiě)必須嚴(yán)格區(qū)分。
保存高含穗:在當(dāng)前情況下依次按Esc,然后輸入:wq
linux系統(tǒng)下設(shè)置環(huán)境變量
你要在什么范爛迅圍內(nèi)設(shè)置環(huán)境變量?
>系統(tǒng)全局?
用戶全局?
>當(dāng)前終端?
你用的什么Shell?
====================================
請(qǐng)修改你的用戶主目錄下的“.bash_profile”。
可在適當(dāng)緩卜位置添加“擾歷穗pwd”命令,以顯示當(dāng)前目錄。
在shell里面輸入env,可以查看環(huán)境變量。想設(shè)置某個(gè)察信臨時(shí)文件變量,在shell里面輸入export
xxx=xxxx就行。想永久地設(shè)置的話,可以改/etc/bashrc,這個(gè)是系悔談統(tǒng)變量,也是在文件里加上碧沒(méi)碰export
環(huán)境變量被覆蓋后重新配置Tensorflow-gpu
安裝檔迅CTEX時(shí)自動(dòng)把系統(tǒng)環(huán)境變量覆蓋了。之后import tensorflow 會(huì)報(bào)錯(cuò):
ImportError: Could not find ‘cudart64_90.dll’. TensorFlowrequires that this DLL be installed in a directory that is named in your %PATH%environment variable.
重啟電腦讓環(huán)境變量生效,確保cudart64_90.dll在C:\Program Files\NVIDIA GPU Computing Toolkit\行絕此CUDA\v9.0\bin中,宏銷隨后即可正常使用。
以下是踩坑過(guò)程
1.首先按照百度配置path
之后檢查’cudart64_90.dll的確在路徑中,并且tensorflow-gpu,CUDA,cudnn版本匹配。
無(wú)效。
2.隨后將cudart64_90.dll拖入拖出路徑。
無(wú)效。
3.重裝tensorflow-gpu,CUDA,cudnn。
無(wú)效。
按照頂部結(jié)論方法,有效。
關(guān)于linux系統(tǒng)環(huán)境變量覆蓋的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
創(chuàng)新互聯(lián)-老牌IDC、云計(jì)算及IT信息化服務(wù)領(lǐng)域的服務(wù)供應(yīng)商,業(yè)務(wù)涵蓋IDC(互聯(lián)網(wǎng)數(shù)據(jù)中心)服務(wù)、云計(jì)算服務(wù)、IT信息化、AI算力租賃平臺(tái)(智算云),軟件開(kāi)發(fā),網(wǎng)站建設(shè),咨詢熱線:028-86922220
網(wǎng)站欄目:Linux系統(tǒng)中環(huán)境變量覆蓋問(wèn)題及解決方法(linux系統(tǒng)環(huán)境變量覆蓋)
文章地址:http://fisionsoft.com.cn/article/dpjoddp.html


咨詢
建站咨詢
