日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

對(duì)話 UNIX:第 2 部分: 做得多不如做得巧( 四 )


清單 5. 范圍符號(hào)
$ echo AUTHORS COPYING INSTALL MacHINES
AUTHORS COPYING INSTALL MACHINES
$ echo !!:1-2
echo AUTHORS COPYING
AUTHORS COPYING
還有其他的更直接的方法可以用來(lái)再次調(diào)用歷史命令 。其中一種方法是搜索歷史命令:
$ ls I*
$ ls M*
$ echo !?M
ls INSTALL
結(jié)構(gòu) !?M 尋找最近的包含大寫(xiě)字母 M 的歷史命令行 。
環(huán)境變量
流暢地表達(dá)命令行 任務(wù) , 這是一種基本的 Unix 技能 。但是與 UNIX 進(jìn)行對(duì)話不僅僅只是使用 Shell 提示符 , 您還必須與各種各樣的 UNIX 實(shí)用工具進(jìn)行通信 。在 UNIX 中 , 環(huán)境變量保存了 Shell 中的相關(guān)設(shè)置 , 并允許您將首選項(xiàng)傳播到從命令行啟動(dòng)的所有實(shí)用工具中 。
有些環(huán)境變量稱(chēng)為 Shell 變量 , Shell 僅使用這些變量控制其自身的行為 。例如 , 只有 Z Shell 使用 $HISTSIZE 和 $SAVEHIST 管理命令歷史 , 如上所述 ??梢詫?Shell 變量看作相應(yīng)的設(shè)置 。
需要對(duì)其他的環(huán)境變量進(jìn)行導(dǎo)出、或使得它們?nèi)挚捎?, 并將它們復(fù)制到從命令行中啟動(dòng)的每個(gè)命令的進(jìn)程空間(即環(huán)境) 。例如 , $HOME 是一個(gè)特殊的環(huán)境變量 , 它保存了您的 home 目錄的位置 。UNIX 登錄序列將設(shè)置 $HOME(以及其他的環(huán)境變量) , 然后啟動(dòng) Shell , 而 Shell 反過(guò)來(lái)使用 $HOME 查找所有的 Shell 啟動(dòng)文件 。您所啟動(dòng)的其他應(yīng)用程序 , 如 SSH 和 FTP , 引用 $HOME 查找 .netrc 文件(用于存儲(chǔ)機(jī)密的、遠(yuǎn)程訪問(wèn)的密碼) 。有些環(huán)境變量 , 如 $HOME、$PATH 和 $SHELL , 會(huì)被所有應(yīng)用程序使用 。其他的環(huán)境變量可能專(zhuān)門(mén)針對(duì)某個(gè)應(yīng)用程序 。
要查看當(dāng)前所有的環(huán)境變量 , 可以輸入 printenv , 如清單 6 所示 。(根據(jù)系統(tǒng)管理員對(duì)系統(tǒng)所進(jìn)行的配置 , 您系統(tǒng)中的環(huán)境變量可能會(huì)比本文中所介紹的更多或更少 。)
清單 6. 查看環(huán)境變量
$ printenv
PATH=/Users/strike/bin:/Applications/xampp/xamppfiles/bin:/Users/strike/bin:/usr/bin:/
bin:/usr/sbin:/sbin
HOME=/Users/strike
SHELL=/bin/zsh
USER=strike
TERM=xterm-color
LOGNAME=strike
SHLVL=1
PWD=/Local/src/versions/wget/wget-1.9
OLDPWD=/Local/src/versions/wget/wget-1.9/src
PERL5LIB=/Applications/xampp/xamppfiles/lib/perl5/site_perl/5.8.7:/Projects/IGSP/src
CLICOLOR=true
MANPATH=/Local/root/share/man:/usr/share/man:/opt/local/share/man
INFOPATH=/opt/local/share/info
LESS=-n
您可能認(rèn)識(shí)其中大多數(shù)的變量 , 而其他一些可能是新出現(xiàn)的 。Shell 級(jí)別($SHLVL)顯示您所處的 Shell 的深度 。1 表示登錄 Shell , 2 表示您從登錄 Shell 中啟動(dòng)了另一個(gè) Shell , 依此類(lèi)推 。您可以使用 $SHLVL 的值來(lái)更改后續(xù) Shell(嵌套 Shell)的提示符 。$TERM 反映了您的終端(可能是終端模擬程序)設(shè)置 , 對(duì)于確保正確地呈現(xiàn)文本、顏色以及對(duì)按鍵進(jìn)行正確的解釋 , 這是非常重要的信息 。$PWD 是您的當(dāng)前工作目錄 , 而 $OLDPWD 是上一次的工作目錄 。您可以使用這兩個(gè)變量實(shí)現(xiàn)在兩個(gè)目錄之間的快速切換 , 如清單 7 所示 。
清單 7. 在目錄之間進(jìn)行切換
$ echo $PWD
/Users/strike
$ echo $OLDPWD
/Local/src/versions/wget/wget-1.9
$ cd $OLDPWD
$ echo $PWD
/Local/src/versions/wget/wget-1.9
$ echo $OLDPWD
/Users/strike
上面列表中剩下的環(huán)境變量都是應(yīng)用程序特定的 。每個(gè)環(huán)境變量保存了相應(yīng)的首選項(xiàng)設(shè)置 , 當(dāng)您啟動(dòng)了與之關(guān)聯(lián)的應(yīng)用程序后 , 它可以用于控制該應(yīng)用程序的工作方式 。$PERL5LIB 是 Perl 查找自定義庫(kù)的搜索路徑 。ls 命令使用 $CLICOLOR 通過(guò)不同的顏色呈現(xiàn)不同類(lèi)型的文件(目錄為藍(lán)色、可執(zhí)行文件為綠色 , 等等) 。程序的 man 頁(yè)面中通常包含對(duì)自定義應(yīng)用程序環(huán)境變量的說(shuō)明 。

推薦閱讀