login shell 和 non-login shell

login shell會讀取/etc/profile和 ~/.bash_profile[~/.bash_login] [ ~/.profile] /* 三選一, 優先級依次降低*/  和~/.bashrc

non-login shell只會讀取~/.bashrc配置文件


cat  > ~/.bash_profile << "EOF"

exec env -i HOME=$HOME  TERM=$TERM PS1='\u:\w\$ ' /bin/bash              /* -i, --ignore-environment 在一個空的環境中運行bash shell */

EOF


$su -  tester    /*切換tester用戶時啓動一個 login shell */


cat > ~/.bashrc << "EOF"
set +h                                              /* 關閉bash的hash功能, hash會記錄命令的歷史記錄, 關閉後會確保調用PATH變量指定目錄中的命令 */
umask 022
LFS=/mnt/lfs
LC_ALL=POSIX
LFS_TGT=$(uname -m)-lfs-linux-gnu
PATH=/tools/bin:/bin:/usr/bin
export LFS LC_ALL LFS_TGT PATH

EOF

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章