10月11日任务
8.1 shell介绍
8.2 命令历史
8.3 命令补全和别名
8.4 通配符
8.5 输入输出重定向
8.1 shell介绍
shell是一个命令解释器,提供用户和机器之间的交互
支持特定语法,比如逻辑判断、循环
每个用户都可以有自己的shell
CentOS7默认shell为bash(Bourne Agin Shell)
还有zsh、ksh等
8.2 命令历史
history #查看历史输入命令
history -c #清空内存中的命令历史
正常退出终端时才保存进文件中,没退则内存
root用户命令存放于/root/.bash_history 最多1000条
/etc/profile 中修改HISTSIZE的变量改变保存量
source /etc/profile #重新进入终端或用此命令使修改生效
HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S " #修改命令历史格式
永久保存 chattr +a ~/.bash_history
echo $HISTSIZE #变量
!! #执行上一条命令
!n (n为数字) 执行对应第n条数的命令
![命令] #从下往上查找含有该命令的命令并输出
8.3 命令补全和别名
tab键,敲一下,敲两下
当目录所在的无头部相同文件,则敲一下即可补全
当存在多个当前头部相同文件,则敲两下显示全部头部名相同的文件
centos7 支持命令参数补全 需要安装包bash-completion
yum install -y bash-completion
alias别名给命令重新起一个名字
例子 : systemctl restart network.service
alias restartnet="systemctl restart network.service"
各用户都有自己配置别名的文件 ~/.bashrc
ls /etc/profile.d/ #alias 的存放位置之一
自定义的alias放到~/.bashrc
8.4 通配符
通配符
* 通配
? 表示任意的一个字符
[0-3] 0到3的任意一个字符 括=或
[0-9a-zA-Z] 0到3 a到z A到Z 中的任意一个
{1,2}==[12]
输入输出重定向
> cat 1.txt > 2.txt #把1.txt的内容覆盖到2.txt中 正确重定向
>> cat 1.txt >> 2.txt #把1.txt的内容添加到2.txt的末尾 错误追加重定向
> >> 2> 2>> >+2> == &>