您的位置:首页 > 运维架构 > Shell

11.15 shell介绍 ,命令历史,命令补全和别名,通配符,输入输出重定向

2017-11-15 00:00 766 查看

8.1 shell介绍

Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行。

实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核。不仅如此,Shell有自己的编程语言用于对命令的编辑,它允许用户编写由shell命令组成的程序。Shell编程语言具有普通编程语言的很多特点,比如它也有循环结构和分支控制结构等,用这种编程语言编写的Shell程序与其他应用程序具有同样的效果。

Linux提供了像MicrosoftWindows那样的可视的命令输入界面--X Window图形用户界面GUI)。它提供了很多桌面环境系统,其操作就像Windows一样,有窗口、图标和菜单,所有的管理都是通过鼠标控制。GNOME

每个Linux系统的用户可以拥有他自己的用户界面或Shell,用以满足他们自己专门的Shell需要。

Linux发布版本(Red Hat/CentOs)默认安装是shell版本是bash(即Bourne Again Shell),它是sh(即Bourne Shell)的增强版本。Bourne Shell是最早流行起来的一个shell版本。其创始人是Steven Bourne,为了纪念他而命名为Bourn Shell,简称sh。说白了,shell脚本就是一些命令的集合。

8.2 命令历史

我们执行过的命令Linux都会记录,预设可以记录1000条历史命令。这些命令保存在用户的家目录的.bash_history文件中。但需要注意的是,只有当用户正常退出当前shell时,在当前shell中运行的命令才会保存至.bash_history文件中。

!是与命令历史有关的特殊字符,常用的有以下3个。

!!:连续两个!表示执行上一条指令。



!n :这里的n是数字,表示执行命令历史中的第n条指令。



!字符串 (字符串大于等于1):例如!pw表示执行命令历史中最近一次以pw开头的命令。




8.3 命令补全和别名

命令补全:按tab键可以补全一个命令,一个路径或者一个文件名。连续按2次tab键,系统会把所有的命令或者文件名都列出来。

别名



可以自定义命令的别名,格式为alias【命令别名】=【‘具体的命令’】



也可以unalias命令解除别名。



8.4 通配符

在bash下,可以使用*来匹配零个或多个字符,用?匹配一个字符。





8.5 输入输出重定向

输入重定向用于命令的输入,输出重定向用于改变命令的输出(较为常用)。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐