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

Shell基础知识 (1) 之 介绍、history 、Tab键、alias、通配符和输入输出重定向

2018-04-01 00:00 351 查看

8.1 shell介绍

shell是一个命令解释器,它在操作系统的最外层,负责直接与用户对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出到屏幕返回给用户。这种对话方式可以是交互的方式(从键盘输入命令,可以立即得到shell的回应),或非交互(脚本)的方式。

1. 常用操作系统的默认Shell

linux是Bourne Again shell(bash)

Solaris和FreeBSD缺省的是Bourne shell(sh)

AIX下是Korn Shell(ksh)

HP-UX缺省的是POSIX shell(sh)

Centos linux系统默认的shell是bash

2. Shell运行过程

用户-shell命令解释器-内核-硬件-内核-shell命令解释器-用户

8.2 命令历史

1. history 命令历史

Linux可以记录敲过的命令,预设的是可以记录1000条。这些命令历史记录会保存在
.bash_history
文件里面。只有退出该终端的时候,才会保存到这个文件里。

更改环境变量HISTSIZE,是系统能保存更多的命令历史记录

vim /etc/profile          环境变量HISTSIZE 在路径/etc/profile里面
...                      找到HISTSIZE这一行
HISTSIZE=1000            系统默认保存是1000条命令历史记录,可以在这里面修改
改成 HISTSIZE=2000        改成2000条
qw                        保存退出
soure /etc/peofile        刷新一下配置文件


清除history里面的命令记录

history -c                但是之前保存在 .bash_history 文件的记录不会掉


关于history的一些高级用法

让history详细显示命令历史格式
HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S"
在/etc/peofile 里面添加 HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S"  ,保存刷新,就可以了

让history命令历史永久保存
chaeer +a ~/.bash_history

和history有关的快捷键
!!                        执行上一条命令
!761                      执行第761条命令
!echo                    运行 从命令历史里面从下往上找,以echo开头的命令

8.3 命令补全和别名

1. Tab键

不仅可以补全命令也可以补全路径,敲一个tab会补全一个路径或者一个文件名或者一个命令。 敲两下就会把所有的命令或者文件名都列出来。

另外,centOS7中,
tab
已经支持补全参数了, 需要安装一个软件包。

yum install -y bash-completion  安装完成之后重启一下系统即可

例如,systemctl restart network 就是参数的一种,centOS6的时候需要全部手打出来,centOS7不用了。输入到一半就可使用tab就可以补全。

2. alias

alias命令命名的别名记录配置文件有2个

用户家目录下的.bashrc

/etc/profile.d (但最好编辑上一个,这个别动)

8.4 通配符

通配符通配符含义
*匹配所有字符
匹配一个任意字符,如果文件名为两个或者两个以上的,将不在匹配范围内
[0-9] 中括号匹配0-9范围内的,也可以是字母 a-z、A-Z;可以同时写多个[0-9a-zA-Z]
{1,2,3} 花括号匹配范围内的字符,需要以 , 逗号分隔,

8.5 输入输出重定向

重定向符号例子重定向符含义
> 重定向cat 1.txt > 2.txt把 1.txt 的输出结果,输入到2.txt内,输入过程,会把2.txt内的内容删除,然后再把内容写入2.txt 内
>> 追加重定向cat 1.txt > 2.txt把 1.txt 的输出结果,添加到2.txt内,输入过程,会直接把内容追加到2.txt内,在末行进行添加
2> 错误信息重定向lsaaa 2> a.txt把运行的错误信息,输入到 a.txt 下,输入过程,如果发生错误信息,会把a.txt内的内容删除,然后再把内容写入a.txt 内
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  shell
相关文章推荐