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在哪里定义的

  1. 用户家目录下: ~/.bashrc。自定义的alias放到 ~/.bashrc

技术分享图片

技术分享图片

  1. “/etc/profile.d/“里

技术分享图片

  • 如果不想用了,还可以使用unalias命令解除别名功能。

unalias  [别名]

8.4 通配符

在bash下,可以使用*来匹配零个或多个字符,不分字符也不分几个。

技术分享图片

用?匹配一个字符和一个数字。

技术分享图片

用[ ]来匹配,[ ]里表示的是范围,里面取值只取1个

技术分享图片

技术分享图片

技术分享图片

用{ }来匹配,{ }里面的取值范围要加,

技术分享图片

8.5 输入输出重定向

输人重定向用于改变命令的输人,输出重定向用于改变命令的输出。输出重定向更为常用,它经常用于将命令的结果输人到文件中,而不是屏幕上。

输人重定向的命令: <

技术分享图片

输出重定向的命令: >

追加重定向命令: >>

错误重定向命令:2>

追加错误重定向命令:2>>

技术分享图片

错误和正常的输出信息重定向命令:&>(写在同一个文件里)

技术分享图片

追加错误和正常的输出信息重定向命令:&>>(写在同一个文件里)

技术分享图片

既有正确的输出,又有错误的输出。(写在不同的个文件里)

技术分享图片


以上是关于2018.1.10 5周3次课的主要内容,如果未能解决你的问题,请参考以下文章

2018-1-10 5周3次课 命令补全别名通配符重定向

2018.3.23 13周5次课

2018.3.30 14周5次课

2018.3.16 12周5次课

2018.1.3 4周2次课

2018.3.5 10周4次课