UNIX基础--Shells
文章目录
Shells
Shell提供了一个和操作系统交互的命令行接口。shell的主要功能就是从输入取得命令然后去执行。FreeBSD内含了一些shell,包括:Bourne shell(sh)、 extended C shell(tcsh)。 其他shell也可在FreeBSD的Ports得到,例如:zsh和bash。
Shell的特点:
- 文件名补全
- 使用环境变量 Common Environment Variables
|
|
怎样设置环境变量:不同的shell有不同的方法。
- 在tcsh和csh这样的C-Style shell,使用
setenv
设置环境变量 - 在sh和bash这样的Bourne shell,使用,
export
设置环境变量
例如:设置或改变EDITOR环境变量,将EDITOR设为/usr/local/bin/vim. 在csh或tcsh下
|
|
在sh或bash下
|
|
命令行中在环境变量前加一个$字符,可以取得环境变量查看当前设置。
shell里有许多特别的字符代表着特别的内容,我们把叫做meta-characters。最常用的就是*
字符,它可代表文件名的任何字符。为了防止shell去分析这些特别字符, 我们可在它之前加一个 \
字符去说明它只是普通字符。
改变Shell
改变Shell的最简单方法是使用 chsh 命令。
- 执行 chsh 将根据EDITOR 环境变量进入到那个编辑器,假如没有设定,就会进入vi编辑器。 请改变“Shell:”这行对应值。
- 可使用chsh 的-s选项, 这样就能设置您的shell却又不用编辑器。假如想把shell改为bash:
|
|
注意:新的shell必须在
/etc/shells
文件里列出。 如果从ports里安装一个shell,应该默认自动添加到这个文件了。如果没有添加,用下面的命令添加:echo "/usr/local/bin/bash" >> /etc/shells
,然后从新运行chsh
.
Shell高级技巧
Advanced Shell Techniques
- 重定向:
>
<
- 管道:
|
文章作者 孤逐王
上次更新 2015-04-27