Shells
Shell提供了一個和操作系統(tǒng)交互的命令行接口请契。shell的主要功能就是從輸入取得命令然后去執(zhí)行。FreeBSD內(nèi)含了一些shell均抽,包括:Bourne shell(sh)、 extended C shell(tcsh)。 其他shell也可在FreeBSD的Ports得到椰憋,例如:zsh和bash。
Shell的特點:
- 文件名補(bǔ)全
- 使用環(huán)境變量
Common Environment Variables
Variable Description
USER Current logged in user's name.
PATH Colon-separated list of directories to search for binaries.
DISPLAY Network name of the Xorg display to connect to, if available.
SHELL The current shell.
TERM The name of the user's type of terminal. Used to determine the capabilities of the terminal.
TERMCAP Database entry of the terminal escape codes to perform various terminal functions.
OSTYPE Type of operating system.
MACHTYPE The system's CPU architecture.
EDITOR The user's preferred text editor.
PAGER The user's preferred utility for viewing text one page at a time.
MANPATH Colon-separated list of directories to search for manual pages.
怎樣設(shè)置環(huán)境變量:不同的shell有不同的方法赔退。
- 在tcsh和csh這樣的C-Style shell橙依,使用
setenv
設(shè)置環(huán)境變量 - 在sh和bash這樣的Bourne shell,使用,
export
設(shè)置環(huán)境變量
例如:設(shè)置或改變EDITOR環(huán)境變量硕旗,將EDITOR設(shè)為/usr/local/bin/vim.
在csh或tcsh下
setenv EDITOR /usr/local/bin/vim
在sh或bash下
export EDITOR="/usr/local/bin/vim"
命令行中在環(huán)境變量前加一個$字符窗骑,可以取得環(huán)境變量查看當(dāng)前設(shè)置。
shell里有許多特別的字符代表著特別的內(nèi)容漆枚,我們把叫做meta-characters创译。最常用的就是*
字符,它可代表文件名的任何字符墙基。為了防止shell去分析這些特別字符软族, 我們可在它之前加一個\
字符去說明它只是普通字符。
改變Shell
改變Shell的最簡單方法是使用 chsh 命令残制。
- 執(zhí)行 chsh 將根據(jù)EDITOR 環(huán)境變量進(jìn)入到那個編輯器立砸,假如沒有設(shè)定,就會進(jìn)入vi編輯器初茶。 請改變“Shell:”這行對應(yīng)值颗祝。
- 可使用chsh 的-s選項, 這樣就能設(shè)置您的shell卻又不用編輯器。假如想把shell改為bash:
chsh -s /usr/local/bin/bash
注意:新的shell必須在
/etc/shells
文件里列出螺戳。 如果從ports里安裝一個shell搁宾,應(yīng)該默認(rèn)自動添加到這個文件了。如果沒有添加倔幼,用下面的命令添加:echo "/usr/local/bin/bash" >> /etc/shells
盖腿,然后從新運行chsh
.
Shell高級技巧
Advanced Shell Techniques
- 重定向:
>
<
- 管道:
|