2018.1.10 5周3次课
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2018.1.10 5周3次课相关的知识,希望对你有一定的参考价值。
五周第三次课(1月10日)
8.1 shell介绍
8.2 命令历史
8.3 命令补全和别名
8.4 通配符
8.5 输入输出重定向
8.1 shell介绍
shell是系统跟计算机硬件交互时使用的中间介质,它只是系统的一个工具。实际上,在shell和计算机硬件之间还有一层东西一一系统内核。如果把计算机硬件比作一个人的躯体,那系统内核就是人的大脑。至于shell,把它比作人的五官似乎更贴切些。言归正传,用户直接面对的不是计算机硬件而是shell,用户把指令告诉shell,然后shell再传输给系统内核,接着内核再去支配计算机硬件去执行各种操作。
shell是一个命令解释器,提供用户和机器之间的交互
支持特定语法,比如逻辑判断、循环
每个用户都可以有自己特定的shell
CentOS7默认shell为bash(Bourne Agin Shell)
还有zsh、ksh等
8.2 命令历史
我们执行过的命令Linux都会记录,预设可以记录1000条历史命令。这些命令保存在用户的家目录的 .bash history文件中。但需要注意的是,只有当用户正常退出当前shell时,在当前shell中运行的命令才会保存至 .bash _history文件中。
history命令
.bash_history
最大1000条
清空当前内存中的历史命令纪录,用命令【history -c】
变量HISTSIZE
修改变量HISTSIZE在“/etc/profile”中修改
使修改后生效
HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "
记录历史命令运行的日期和时间
要使命令生效,编辑“/etc/profile”文件
只能追加,不能删除 chattr +a ~/.bash_history
!!:连续两个!表示执行上一条指令
!n:这里的n是数字,表示执行命令历史中的第n条指令。
!字符串(字符串大于等于1):例如!pw表示执行命令历史中最近一次以pw开头的命令。
8.3 命令补全和别名
tab键,敲一下,敲两下
按tab键可以帮我们补全一个指令、一个路径或者一个文件名。连续按两次tab键,系统则会把所有的命令或者文件名都列出来。
参数补全,安装bash-completion
yum install -y bash-completion
安装完成后需要重启reboot后命令才能生效
alias别名给命令重新起个名字
alias,它也是bash所特有的功能之一。 我们可以通过alias把一个常用的并且很长的指令另取名为一个简单易记的指令。直接执行alias命令,会看到目前系统预设的别名。
alias在哪里定义的
用户家目录下: ~/.bashrc。自定义的alias放到 ~/.bashrc
“/etc/profile.d/“里
如果不想用了,还可以使用unalias命令解除别名功能。
unalias [别名]
8.4 通配符
在bash下,可以使用*来匹配零个或多个字符,不分字符也不分几个。
用?匹配一个字符和一个数字。
用[ ]来匹配,[ ]里表示的是范围,里面取值只取1个
用{ }来匹配,{ }里面的取值范围要加,
8.5 输入输出重定向
输人重定向用于改变命令的输人,输出重定向用于改变命令的输出。输出重定向更为常用,它经常用于将命令的结果输人到文件中,而不是屏幕上。
输人重定向的命令: <
输出重定向的命令: >
追加重定向命令: >>
错误重定向命令:2>
追加错误重定向命令:2>>
错误和正常的输出信息重定向命令:&>(写在同一个文件里)
追加错误和正常的输出信息重定向命令:&>>(写在同一个文件里)
既有正确的输出,又有错误的输出。(写在不同的个文件里)
以上是关于2018.1.10 5周3次课的主要内容,如果未能解决你的问题,请参考以下文章