亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Linux 環(huán)境變量詳解及實(shí)例

 更新時(shí)間:2017年02月13日 11:12:03   作者:殘夜  
這篇文章主要介紹了Linux 環(huán)境變量詳解及實(shí)例的相關(guān)資料,需要的朋友可以參考下

Linux環(huán)境變量

~/.bash_profile && ~/.bashrc

用戶登陸Linux操作系統(tǒng)的時(shí)候,"/etc/profile", "~/.bash_profile"等配置文件會(huì)被自動(dòng)執(zhí)行。

執(zhí)行過程是這樣的:

  1. 登陸Linux系統(tǒng)時(shí),首先啟動(dòng)"/etc/profile",
  2. 然后啟動(dòng)用戶目錄下的"~/.bash_profile",
  3. 如果"~/.bash_login"和"~/.profile"文件存在的時(shí)候也會(huì)在執(zhí)行。

下面看看"~/.bash_profile"文件里面有什么東西

$cat ~/.bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin:/home/work/local/python/lib/python2.6/site-packages/django/bin/:$HOME/bin:/home/work/local/mysql5/bin/;
LD_LIBRARY_PATH=/home/work/local/mysql5/lib/mysql
alias py='/home/work/local/python/bin/python'
export PATH LD_LIBRARY_PATH
unset USERNAME

可以看到~/.bash_profile文件先調(diào)用~/.bashrc,然后再把PATH和LD_LIBRARY_PATH加載。

環(huán)境變量相關(guān)配置文件

  • /etc/profile:此文件為系統(tǒng)的每個(gè)用戶設(shè)置環(huán)境信息,當(dāng)用戶第一次登錄時(shí),該文件被執(zhí)行,并從/etc/profile.d目錄的設(shè)置文件中搜集shell的設(shè)置。
  • /etc/bashrc:為每一個(gè)運(yùn)行bash shell的用戶執(zhí)行此文件,當(dāng)bash shell被打開時(shí),該文件被讀取.
  • ~/.bash_profile:每個(gè)用戶都可使用該文件輸入專用于自己使用的shell信息,當(dāng)用戶登錄時(shí),該文件僅僅執(zhí)行一次。默認(rèn)情況下,他設(shè)置一些環(huán)境變量,執(zhí)行用戶的.bashrc文件。
  • ~/.bashrc:該文件包含專用于你的bash shell的bash信息,當(dāng)?shù)卿洉r(shí)及每次打開新的shell時(shí),該該文件被讀。
  • ~/.bash_logout:當(dāng)每次退出系統(tǒng)(退出bash shell)時(shí),執(zhí)行該文件。

/etc/profile是全局性的功能,其中設(shè)置的變量作用于所有用戶,~/.bash_profile中設(shè)置的變量能繼承/etc/profile中的變量并作用于用戶。

  1. ~/.bash_profile 是交互式、login 方式進(jìn)入 bash 運(yùn)行的
  2. ~/.bashrc 是交互式 non-login 方式進(jìn)入 bash 運(yùn)行的

通常二者設(shè)置大致相同,所以通常前者會(huì)調(diào)用后者。

crontab執(zhí)行環(huán)境

大家都知道crontab是個(gè)好東東,可以定時(shí)執(zhí)行一些任務(wù),幫助你監(jiān)控系統(tǒng)狀況,幫助你每天重復(fù)的做一些機(jī)械的事情。但是crontab有一個(gè)壞毛病,就是它總是不會(huì)缺省的從用戶profile文件中讀取環(huán)境變量參數(shù),經(jīng)常導(dǎo)致在手工執(zhí)行某個(gè)腳本時(shí)是成功的,但是到crontab中試圖讓它定期執(zhí)行時(shí)就是會(huì)出錯(cuò)

一般crontab無法運(yùn)行的問題都是由環(huán)境變量在crontab中不一定可識(shí)別引起的。

在運(yùn)行crontab的時(shí)候,是non_login方式調(diào)用程序的,此時(shí)~/.bash_profile并不會(huì)被提前調(diào)用。所以,crontab的運(yùn)行環(huán)境相對(duì)于login方式進(jìn)入bash運(yùn)行的環(huán)境來說小得多。如果程序涉及~/.bash_profile使用的環(huán)境變量,那么,部分在login方式可以正常運(yùn)行的程序在crontab下就無法運(yùn)行。

終極推薦解決方案:

30 12 * * * source ~/.bashrc && cd /home/work/mydir && ./myproj

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

最新評(píng)論