重要的環(huán)境變量(3.5,P66-68)
知識(shí)預(yù)覽:alias,type,最重要的 10 個(gè)環(huán)境變量……
掌握情況:
一、alias
1. 顯示別名對(duì)應(yīng)的命令
$alias [某命令]
$alias rm
alias rm='rm -i'
2. 設(shè)置別名(某命令的)
$alias?[別名]=[命令]
3. 刪除別名(某命令的)
$unalias [別名]
二、type
$type [命令]
查看命令類(lèi)型(內(nèi)部/外部命令)
三、最重要的 10 個(gè)環(huán)境變量
圖3 10 個(gè)最重要的環(huán)境變量
1.?$echo $HOME
/root
2.?$echo? $SHELL
/bin/bash
3.?$echo? $HISTSIZE
1000
4.?$echo $HISTFILESIZE
1000
5.$echo $MAIL
/var/spool/mail/root
6.?$echo $LANG
zh_CN.UTF-8
7.?$echo $RANDOM
隨機(jī)整數(shù)
8.$echo $PS1
[\u@\h \W]\$
9.?$echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
10.?$echo $EDITOR
空
四、執(zhí)行一條命令后發(fā)送的事情
1.?判斷用戶(hù)是否以絕對(duì)路徑或相對(duì)路徑的方式輸入命令(如/bin/ls),如果是的話
則直接執(zhí)行。
2.?Linux 系統(tǒng)檢查用戶(hù)輸入的命令是否為“別名命令”。
3.?Bash 解釋器判斷用戶(hù)輸入的是內(nèi)部命令還是外部命令。內(nèi)部命令是解釋器內(nèi)部
的指令,會(huì)被直接執(zhí)行;而用戶(hù)在絕大部分時(shí)間輸入的是外部命令,這些命令交由步驟 4 繼續(xù)處理。
4.?系統(tǒng)在多個(gè)路徑中查找用戶(hù)輸入的命令文件。
備注:詳見(jiàn)圖1,圖2。
五、為什么不能將當(dāng)前目錄(.)添加到 PATH 中呢?
分析
盡管可以將當(dāng)前目錄(.)添加到 PATH 變量中,從而在某些情況下可以讓用戶(hù)免去輸入命令所在路徑的麻煩。但是,如果黑客在比較常用的公共目錄/tmp 中存放了一個(gè)與 ls 或 cd 命令同名的木馬文件,而用戶(hù)又恰巧在公共目錄中執(zhí)行了這些命令,那么就極有可能中招了。