什么是Shell?
shell是用户和Linux内核之间的接口程序。在提示符下输入的每个命令都由shell先解释然后传给Linux内核。
shell 是一个命令语言解释器(command-language interpreter)。拥有自己内建的 shell 命令集。此外,shell也能被系统中其他有效的Linux 实用程序和应用程序所调用。
不论何时你键入一个命令,它都被Linux shell所解释。
Shell的另一个重要特性是它自身就是一个解释型的程序设计语言,shell 程序设计语言支持在高级语言里所能见到的绝大多数程序控制结构,比如循环,函数,变量和数组。
shell是用户和Linux内核之间的接口程序。在提示符下输入的每个命令都由shell先解释然后传给Linux内核。
shell 是一个命令语言解释器(command-language interpreter)。拥有自己内建的 shell 命令集。此外,shell也能被系统中其他有效的Linux 实用程序和应用程序所调用。
不论何时你键入一个命令,它都被Linux shell所解释。
Shell的另一个重要特性是它自身就是一个解释型的程序设计语言,shell 程序设计语言支持在高级语言里所能见到的绝大多数程序控制结构,比如循环,函数,变量和数组。
Shell的启动
shell在你成功地登录进入系统后启动,并始终作为你与系统内核的交互手段直至你退出系统。你系统上的每位用户都有一个缺省的shell。每个用户的默认shell在系统里的passwd文件里被指定。
常用Shell的功能
1)命令行补齐(按Tab键)
2)通配符
3)命令历史记录
4)输入重定向
5)输出重定向
6)管道
7)作业控制
通配符:
bash 支持三种通配符:
* 匹配任何字符和任何数目的字符
? 匹配任何单字符
[...] 匹配任何包含在括号里的单字符
1)命令行补齐(按Tab键)
2)通配符
3)命令历史记录
4)输入重定向
5)输出重定向
6)管道
7)作业控制
通配符:
bash 支持三种通配符:
* 匹配任何字符和任何数目的字符
? 匹配任何单字符
[...] 匹配任何包含在括号里的单字符
命令历史:
bash 把你先前输入的命令文本保存在一个历史列表中。当你用你的帐号登录后历史列表将根据一个历史文件被初始化。历史文件的文件名被一个叫 HISTFILE 的 bash变量指定。历史文件的缺省名字是 .bash_history。
bash 把你先前输入的命令文本保存在一个历史列表中。当你用你的帐号登录后历史列表将根据一个历史文件被初始化。历史文件的文件名被一个叫 HISTFILE 的 bash变量指定。历史文件的缺省名字是 .bash_history。
输入输出重定向:
输入重定向用于改变一个命令的输入源。
输出重定向使你能把一个命令的输出重定向到一个文件里,而不是显示在屏幕上。
标准输入:keyboard --标示符0
标准输出:monitor -- 1
标准错误输出:monitor -- 2
使用方法:
标准输入输出重定向:
> 输出重定向 eg:ls /etc > /tmp/test.txt
>> 追加输出重定向
< 输入重定向
<< 追加输入重定向
错误输出重定向:2> (2>> --追加)
整合正确和错误的输出流:&> (&>> --追加)
将错误输出转为标准输出:2>&1
输入重定向用于改变一个命令的输入源。
输出重定向使你能把一个命令的输出重定向到一个文件里,而不是显示在屏幕上。
标准输入:keyboard --标示符0
标准输出:monitor -- 1
标准错误输出:monitor -- 2
使用方法:
标准输入输出重定向:
> 输出重定向 eg:ls /etc > /tmp/test.txt
>> 追加输出重定向
< 输入重定向
<< 追加输入重定向
错误输出重定向:2> (2>> --追加)
整合正确和错误的输出流:&> (&>> --追加)
将错误输出转为标准输出:2>&1
管道:“|”
把前一个命令的输出当作后一个命令的输入;
把前一个命令的输出当作后一个命令的输入;
转载于:https://blog.51cto.com/wld6linux/788696