在linux中,bashrc是home目錄下的一個(gè)shell文件,用于儲(chǔ)存用戶的個(gè)性化設(shè)置。在bash每次啟動(dòng)時(shí)都會(huì)加載bashrc文件中的內(nèi)容,并根據(jù)內(nèi)容定制當(dāng)前bash的配置和環(huán)境。bashrc的作用:1、可以在利用命名函數(shù)alias定制需要的指令;2、設(shè)定環(huán)境路徑;3、提示符設(shè)置。
一、.bashrc 是什么?
.bashrc是home目錄下的一個(gè)shell文件,用于儲(chǔ)存用戶的個(gè)性化設(shè)置。在bash每次啟動(dòng)時(shí)都會(huì)加載.bashrc文件中的內(nèi)容,并根據(jù)內(nèi)容定制當(dāng)前bash的配置和環(huán)境。
補(bǔ)充: .bash_profile和.bashrc的區(qū)別?
兩者在登陸bash時(shí)都會(huì)被bash執(zhí)行,但是.bash_profile只在會(huì)話開(kāi)始時(shí)被讀取,而.bashrc在每次打開(kāi)新的終端時(shí)都會(huì)被讀取。
二、.bashrc 能干什么?
1.個(gè)性化指令
alias?ll?=?"ls?-lha"
2.設(shè)定環(huán)境路徑
PATH="$PATH:$HOME/.local/bin:$HOME" export?PATH
3.提示符設(shè)置
PS1=”[u:?w]$”
三、.bashrc 怎么用?
可以用任何終端文本編輯器打開(kāi).bashrc。以vim為例:
vim?~/.bashrc
編輯.bashrc需要遵循bash腳本格式,
1、個(gè)性化指令
打開(kāi).bashrc后,可以在利用命名函數(shù)alias定制需要的指令,如
#用?ll?代替?ls?-lha?這個(gè)命令,在此bash下輸入命令?ll?等 #同于輸入?ls?-lha?命令 alias?ll?=?"ls?-lha"
除了縮短命名,也可以用bash函數(shù)組合多個(gè)命令到一個(gè)操作,這些命令大多遵循以下語(yǔ)法。
語(yǔ)法一:
function?function_name?{ ????command1 ????command2^> }
語(yǔ)法二:
function_name?()?{ ?command_1 ?command_2 }
語(yǔ)法三
function_name?()?{?command1;?command2;?}
下面的命令組合了mkdir和cd命令,輸入md folder_name不僅可以在你的工作目錄創(chuàng)建一個(gè)名為”folder_name”的目錄且進(jìn)入其中,代碼如下:
md?()?{ ??mkdir?-p?$1 ??cd?$1? }
也可寫(xiě)成:
md?()?{??mkdir?-p?$1;?cd?$1;?}
2、路徑設(shè)置
每次export路徑太麻煩,把路徑加入到.bashrc是一個(gè)一勞永逸的方法,常見(jiàn)的設(shè)置語(yǔ)法如下:
#軟件名-版本號(hào) #語(yǔ)法一 PATH=$PATH:路徑 export?PATH #語(yǔ)法二 export?PATH=$PATH:路徑
上述語(yǔ)法可以理解為,在原來(lái)PATH的后面繼續(xù)添加了新的路徑,在運(yùn)行特定指令時(shí),系統(tǒng)會(huì)逐個(gè)位置去尋找文件。 $PATH 表示原先設(shè)定的路徑,不能遺漏。不同于DOS/windows,unix類系統(tǒng)的環(huán)境變量的路徑用冒號(hào):分割,而不是分號(hào);。為避免環(huán)境變量過(guò)多產(chǎn)生混亂,建議所有語(yǔ)句都添加在文件結(jié)尾,并添加注釋。
所有環(huán)境變量名都是大寫(xiě),Linux區(qū)分大小寫(xiě)
你對(duì) .bashrc 所做的任何修改將在下一次啟動(dòng)終端時(shí)生效。如果你想立刻生效的話,運(yùn)行下面的命令:
source?~/.bashrc
四、.bashrc 沒(méi)了怎么辦?
首先,首先,首先,.bashrc可以刪除,但是刪除不存在任何好處。
如果用戶刪除了.bashrc,可以從如下路徑拷貝一份原始的.bashrc文件到用戶home目錄下
cp?/etc/skel/.bashrc?~/