8.1 shell介绍
shell是一个命令解释器,提供用户和机器之间的交互
支持特定语法,比如逻辑判断、循环
每个用户都可以有自己特定的shell
CentOS7默认的shell为bash(Bourne Again Shell)
8.2 命令历史
history命令
最大1000条
变量HISTSIZE
/etc/profile中修改
HISTTIMEFORMAT="%Y%m%d %H:%M:%S"
永久保存chattr +a ~/.bash_history
!!:表示执行上一条命令。
!n:表示执行命令历史中的第n条命令。
!word:例如!mkd表示执行命令历史中最近一次以mkd开关的命令。
8.3 命令补全和别名
tab键,敲一下,敲两下
参数补全,安装bash-completion
alias别名给命令重新起个名字
各用户都有自己配置别名的文件 ~/.bashrc
自定义的alias放到~/.bashrc
8.4 通配符
在bash下,可以用*来匹配零个或多个字符,用?匹配一个字符。
8.5 输入输出重定向
输入重定向(<)用于改变命令的输入。
输出重定向(>)用于改变命令的输出。,更为常用,经常用于将命令的结果输入到文件中,而不是屏幕上。
此外还有错误重定向命令2>和追加重定向命令>>。
8.6 管道符和作业控制
管道符|用于将前一个命令的输出作为后一个命令的输入。
当运行进程时,可以使它暂停(按Ctrl+Z),然后使用fg(foreground)命令恢复,或者使用命令bg(background)使它到后台运行。此外,也可以按Ctrl+C使它终止。
8.7/8.8 shell变量
env:列出系统预设的全部系统变量。
set:输出环境变量。
8.9 环境变量配置文件
/etc/profile:这个文件预设了几个重要的变量,例如PATH、USER、LOGNAME、MAIL、INPUTRC、HOSTNAME、HISTSIZE、umask等。
/etc/bashrc:这个文件主要预设了umask和PS1。PS1就是我们在输入命令时前面的那串字符。
.bash_profile:该文件定义了用户的个人化路径与环境变量的文件名称。每个用户都可以使用该文件输入专属于自己 的shell信息,当用户登录时,该文件仅仅执行一次。
.bashrc:该文件包含专属于自己的shell的bash信息,当登录或每次打开新的shell时,该文件会被读取。
.bash_history:该文件用于记录命令历史。
.bash_logout:当退出shell时,会执行该文件。可以将一些清理的工作放到这个文件中。