shell:外殼,用戶登錄時運行,
shell:
GUI:Gnome、KDE、Xfce 圖形界面式
CLI:sh、csh、ksh、zsh、bash-->Tcsh 命令行式
1、多個用戶登錄時,同一個shell程序運行的多個shell進程;同一個用戶多次登錄,多個進程,名字一樣,進程號不同;
2、進程:在每個進程來看,當前主機上只存在內核和當前進程;進程是程序的副本,是程序執行的實例。
站在用戶的角度來說,shell的類型分爲登錄式shell和非登錄式shell
登錄式shell:
1、正常通過某終端登錄
2、通過 su - USERNAME 登錄
3、通過 su -l USERNAME 登錄
非登錄式shell:
1、通過 su USERNAME 登錄
2、圖形終端下打開命令窗口
3、自動執行的shell腳本
配置文件:
全局配置文件:/etc/profile,/etc/profile.d/所有.sh文件,/etc/bashrc;
個人配置文件:~/.bash_profile,~/.bashrc.
profile類文件:設定環境變量,運行命令和腳本;
bashrc類文件:設定本地變量,定義命令別名。
登錄式shell讀取配置文件過程:
/etc/profile-->/etc/profile.d/所有.sh文件-->~/.bashrc_profile-->~/.bashrc-->/etc/bashrc
非登錄式shell讀取配置文件過程:
~/.bashrc-->/etc/bashrc-->/etc/profile.d/所有.sh文件。
bash及其特性:“Borne Again Shell”(“再次忍受或再次降生外殼程序”――譯註)
bash提供的功能:
1、命令歷史;
2、管道、重定向;
3、命令別名,alias;
4、命令行編輯;
5、命令行展開;
6、文件名通配;
7、變量;
8、編程、腳本;