linux profile文件,全面解析Linux profile文件
Linux profile文件是一個(gè)有關(guān)Linux環(huán)境變量的文件,涉及到許多的系統(tǒng)內(nèi)部和輸出的參數(shù),學(xué)習(xí)使用時(shí)一定要小心謹(jǐn)慎。
Linux profile文件的改變會(huì)涉及到系統(tǒng)的環(huán)境,也就是有關(guān)Linux環(huán)境變量的東西,學(xué)習(xí)Linux要了解Linux profile文件的相關(guān)原理,這里對這個(gè)文件進(jìn)行具體分析。這里的修改會(huì)對所有用戶起作用。
1、Linux是一個(gè)多用戶的操作系統(tǒng)。每個(gè)用戶登錄系統(tǒng)后,都會(huì)有一個(gè)專用的運(yùn)行環(huán)境。通常每個(gè)用戶默認(rèn)的環(huán)境都是相同的,這個(gè)默認(rèn)環(huán)境實(shí)際上就是一組環(huán)境變量的定義。用戶可以對自己的運(yùn)行環(huán)境進(jìn)行定制,其方法就是修改相應(yīng)的系統(tǒng)環(huán)境變量。
2、常在/etc/profile文件中修改環(huán)境變量,在這里修改的內(nèi)容是對所有用戶起作用的。以下主要操作將在該文件中進(jìn)行。
3、如何添加環(huán)境變量。
例如添加”NAME=liheng“ 。 在profile文件的最后添加如下內(nèi)容export NAME=liheng
變量值liheng可以加引號(hào)也可以不加,效果一樣。
4、在profile文件添加或修改的內(nèi)容需要注銷系統(tǒng)才能生效。
5、重復(fù)定義變量怎樣理解。
經(jīng)常出現(xiàn)的是對PATH變量的定義。
例如:在profile文件默認(rèn)對PATH變量都有設(shè)置PATH=¥¥¥¥¥¥¥(記不住了),在以后可能在對PATH設(shè)置,一般都加在profile 文件的最后PATH=······(打個(gè)比方)。而系統(tǒng)之中認(rèn)定的PATH=·······¥¥¥¥¥¥¥¥¥,也就是說相同名字的環(huán)境變量,后寫入的先 起作用(通俗地講)。大家一定要注意。
6、特殊字符介紹。
例如在profile中有如下內(nèi)容,通過以下內(nèi)容說明特殊符號(hào)的用法。
export A=/q/jing:aaa/cc/ld
export B=.:/liheng/wang export A=/cd/cdr:$A
大家注意紅色的符號(hào):
: 表示并列含義,例如A變量值有多個(gè),用:符號(hào)進(jìn)行分離。
. 表示你操作的當(dāng)前目錄。例如pap命令會(huì)查找B環(huán)境變量。
在/home鍵入pap命令,系統(tǒng)首先在/home目錄下(即當(dāng)前路徑)查找關(guān)于 B 的內(nèi)容,如果沒有在/liheng/wang目錄下查找關(guān)于B的內(nèi)容。 $ 表示該變量本次定義之前的值,例如$A代表/q/jing:aaa/cc/ld。也就是說 A=/cd/cdr:/q/jing:aaa/cc/ld
7、使用env命令顯示所有的環(huán)境變量 。在命令提示符下鍵入env就行了。
set命令顯示所有本地定義的Shell變量。
8、常見的環(huán)境變量
PATH:決定了shell將到哪些目錄中尋找命令或程序
HOME:當(dāng)前用戶主目錄
MAIL:是指當(dāng)前用戶的郵件存放目錄。
SHELL:是指當(dāng)前用戶用的是哪種Shell。
HISTSIZE:是指保存歷史命令記錄的條數(shù)。
LOGNAME:是指當(dāng)前用戶的登錄名。
HOSTNAME:是指主機(jī)的名稱,許多應(yīng)用程序如果要用到主機(jī)名的話,通常是從這個(gè)環(huán)境變量中來取得的。
LANG/LANGUGE:是和語言相關(guān)的環(huán)境變量,使用多種語言的用戶可以修改此環(huán)境變量。
PS1:是基本提示符,對于root用戶是#,對于普通用戶是$。
PS2:是附屬提示符,默認(rèn)是“>”。可以通過修改此環(huán)境變量來修改當(dāng)前的命令符,比如下列命令會(huì)將提示符修改成字符串“Hello,My NewPrompt :) ”。
# PS1=" Hello,My NewPrompt :) "
9、使用修改.bashrc文件進(jìn)行環(huán)境變量的編輯,只對當(dāng)前用戶有用。使用修改 /etc/profile 文件進(jìn)行環(huán)境變量的編輯,是對所有用戶有用。大家一定要注意區(qū)別。
10、Linux profile文件在系統(tǒng)啟動(dòng)時(shí)將被運(yùn)行。大家可以在里面加入其他命令,但是一定要加正確,不然的話系統(tǒng)會(huì)啟動(dòng)不起來的。
11? /etc/profile
全局(公有)配置,不管是哪個(gè)用戶,登錄時(shí)都會(huì)讀取該文件。
12 /etc/bashrc
Ubuntu沒有此文件,與之對應(yīng)的是/etc/bash.bashrc,它也是全局(公有)的,bash執(zhí)行時(shí),不管是何種方式,都會(huì)讀取此文件。
13 ~/.profile
若bash是以login方式執(zhí)行時(shí),讀取~/.bash_profile,若它不存在,則讀取~/.bash_login,若前兩者不存在,讀取~/.profile。
另外,圖形模式登錄時(shí),此文件將被讀取,即使存在~/.bash_profile和~/.bash_login。
14?? ~/.bash_login
若bash是以login方式執(zhí)行時(shí),讀取~/.bash_profile,若它不存在,則讀取~/.bash_login,若前兩者不存在,讀取~/.profile。
15? ~/.bash_profile
Ubuntu默認(rèn)沒有此文件,可新建。
只有bash是以login形式執(zhí)行時(shí),才會(huì)讀取此文件。通常該配置文件還會(huì)配置成去讀取~/.bashrc。
16? ~/.bashrc
當(dāng)bash是以non-login形式執(zhí)行時(shí),讀取此文件。若是以login形式執(zhí)行,則不會(huì)讀取此文件。
17? ~/.bash_logout
注銷時(shí),且是login形式,此文件才會(huì)讀取。也就是說,在文本模式注銷時(shí),此文件會(huì)被讀取,圖形模式注銷時(shí),此文件不會(huì)被讀取。
下面是在本機(jī)的幾個(gè)例子:
1. 圖形模式登錄時(shí),順序讀取:/etc/profile和~/.profile
2. 圖形模式登錄后,打開終端時(shí),順序讀取:/etc/bash.bashrc和~/.bashrc
3. 文本模式登錄時(shí),順序讀取:/etc/bash.bashrc,/etc/profile和~/.bash_profile
4. 從其它用戶su到該用戶,則分兩種情況:
(1)如果帶-l參數(shù)(或-參數(shù),--login參數(shù)),如:su -l username,則bash是login的,它將順序讀取以下配置文件:/etc/bash.bashrc,/etc/profile和~ /.bash_profile。
(2)如果沒有帶-l參數(shù),則bash是non-login的,它將順序讀取:/etc/bash.bashrc和~/.bashrc
5. 注銷時(shí),或退出su登錄的用戶,如果是login方式,那么bash會(huì)讀取:~/.bash_logout
6. 執(zhí)行自定義的shell文件時(shí),若使用“bash -l a.sh”的方式,則bash會(huì)讀取行:/etc/profile和~/.bash_profile,若使用其它方式,如:bash a.sh, ./a.sh,sh a.sh(這個(gè)不屬于bash shell),則不會(huì)讀取上面的任何文件。
7. 上面的例子凡是讀取到~/.bash_profile的,若該文件不存在,則讀取~/.bash_login,若前兩者不存在,讀取~/.profile。
總結(jié)
以上是生活随笔為你收集整理的linux profile文件,全面解析Linux profile文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 商务英语中最易犯的五个错误
- 下一篇: linux 性能测试 跑分,测试10秒钟