Linux-shell基础
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux-shell基础相关的知识,希望对你有一定的参考价值。
什么是shell
shell是一个命令解释器,提供用户和机器之间的交互
支持特定语法,比如逻辑判断、循环
每个用户都可以有自己特定的shell
CentOS7默认shell为bash(全称:Bourne Agin Shell)
还有zsh、ksh等
查看是否有安装包:yum list | grep zsh
命令历史
用户敲命令存放文件:用户家目录/.bash_history 例:/root/bash_history
history命令 最大存放1000条
变量HISTSIZE(查看变量:echo $HISTSIZE,系统内置的环境变量)
history -c 可以清空history命令查出来的历史命令,但不能删除.bash_history中的记录
只有退出终端的时候才会保存到.bash_history文件中
history显示命令历史最大修改:/etc/profile中修改
若想使修改生效,命令:source /etc/profile
记录命令执行时间(临时):HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "
若想永久都显示,可以配置环境变量:vim /etc/profile 把HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "和HISTSIZE=1000放在一起
永久保存(.bash_history文件只能被追加不能被删除) chattr +a ~/.bash_history
!! //执行最后一条命令
!n(n指的是数字) //执行history命令出来的第多少条命令
!word(例:!mkdir)
命令补全及别名
tab键,敲一下,敲两下 //补全
参数补全,安装bash-completion:yum install -y bash-completion 安装完成后需要重启终端生效
alias别名给命令重新起个名字(例:alias restartnet=‘systemctl restart network.service‘)
systemctl restart network.service是重启网络服务的命令
各用户都有自己配置别名的文件 ~/.bashrc
alias参数有两个存放位置ls /etc/profile.d/ 和 ~/.bashrc
自定义的alias放到~/.bashrc
取消自定义的别名:unalias 别名
通配符
ls .txt //表示通配 查出目录.txt的所有文档
ls ?.txt //表示显示前缀为一个字符的.txt文件
ls [0-9].txt //可以把前缀0-9范围的.txt文档都显示出来
ls [123].txt //可以把前缀为1、2、3的txt文档显示出来
ls {1,2}.txt //相当于ls [12].txt
未完,待续。。。
以上是关于Linux-shell基础的主要内容,如果未能解决你的问题,请参考以下文章