shell介绍
shell是一个命令解释器,提供用户和机器之间的交互,支持特定语法,比如逻辑判断、循环,每个用户都可以有自己特定的shell
CentOS7默认shell为bash(Bourne Agin Shell)
还有zsh、ksh等
命令历史
查看历史命令
[root@test76 ~]# cat .bash_history
修改历史记录条数:
vi /etc/profile
HISTSIZE=1000
修改查看历史记录的格式:
/etc/profile中新增:
HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "
source /etc/profile
841 2017/10/20 06:01:05 vi .bash_history
842 2017/10/20 06:02:03 vi /etc/profile
843 2017/10/20 06:03:23 source /etc/profile
844 2017/10/20 06:03:27 history
加入权限控制:
[root@test76 ~]# chattr +a .bash_history
[root@test76 ~]# > .bash_history
-bash: .bash_history: Operation not permitted
!!:表示执行上条命令
!844:表示执行844行的命令
!his:表示执行his开头的命令,是最近一次执行的his开头的
命令补全和别名
1、tab补全
2、参数补全 安装bash-completion
alias 别名
[root@test ~]# alias wo='ls /root' #临时有效
[root@test ~]# wo
2.txt 2.txt.bz2 anaconda-ks.cfg
永久有效:
[root@test ~]# vi .bashrc
# .bashrc
# User specific aliases and functions
alias wo='ls /root'
通配符
1、[root@test ~]# ls *.txt
2.txt david.txt
2、
[root@test ~]# ls ?.txt
2.txt
[root@test ~]# ls ??.txt
23.txt
[root@test ~]# ls [0-9].txt
2.txt
[root@test ~]# ls [0-9][0-9].txt
23.txt
[root@test ~]# ls {2,23}.txt
23.txt 2.txt
重定向:
cat 1.txt >2.txt
cat 1.txt >> 2.txt
[root@test ~]# cat 23.txt >> 2.txt &>/dev/null