Shell学习(shell介绍,历史,补全,通配符等)-2018.12.17

1.Shell介绍

    shell是一个交互式命令解释器,使用户和终端进行交互

    每个用户都有自己特定的shell

    Centos7默认shell为bash

2.命令历史

    查看输入的命令历史:history

    输入的命令存储在.bash_history

    history可记录的命令的数量由$HISTSIZE定义,如history显示的命令条数大于$HISTSIZE变量定义的条数,则多出的部分是存在与内存中,可使用history -c命令清除。history -c,可以清空内存中的文件,不能删除配置文件。

    变量$HISTSIZE存在与/etc/profile中,可修改$HISTSIZE的值,以修改存储历史命令的数量。/etc/profile数据修改后,需用source命令使文件即时生效(source /etc/profile),否则需重启终端

    HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S",定义变量HISTTIMEFORMAT的时间显示,可将此变量加入/etc/profile

   chattr +a ~/.bash_history   #命令历史文件只能追加,不可删除。

    !!     #执行最近的一条命令

    !n    #执行第n条命令

    !word   #向上查找第一个以word为开头的命令

3.命令补全和别名

    tab用于命令补全,一次tab为命令补全,两次tab可以列出同名的多个文件;

    参数补全:在centos6版本中只能做到命令补全,在centos7中可以做到参数补全(默认不支持)。要实现参数补全,需要安装bash-completion包,并重启系统

    alias:别名命令。

用法:alias命令本身,可以查看系统中所有的别名,包括自定义。

           建立别名:eg:alias restartnet=‘systemctl restart network.service’

    alias别名存放位置~/.bashrc和/etc/profile.d/脚本中定义的

    删除别名:unalias 别名名称

4.通配符

    *:匹配任意字符,可在任意位置使用

    ?:匹配一个任意字符,可以是数字,也可以是英文

    [0-9]:匹配范围内的数字

    [123]:匹配范围内的任意一个字符

    {*,*}:匹配范围中的一个,哪个或哪个

5.输入输出重定向

    >:将前面的输出输入后边的文件中,删除原来的重写

    >>:追加重定向

    2>:错误重定向

    2>>:将错误追加重定向

    &>:正确错误重定向输出

   &>>:正确错误追加重定向

    <:输入重定向

    2>&1:重定向标准错误到标准输出

eg:ls [12].txt aaa.txt >1.txt 2>a.txt                  #将正确和错误的信息分开重定向

实验图片:

Shell学习(shell介绍,历史,补全,通配符等)-2018.12.17_第1张图片 历史命令存放位置

 

Shell学习(shell介绍,历史,补全,通配符等)-2018.12.17_第2张图片 别名的建立和删除

 

Shell学习(shell介绍,历史,补全,通配符等)-2018.12.17_第3张图片 通配符
Shell学习(shell介绍,历史,补全,通配符等)-2018.12.17_第4张图片 标重定向追加重定向题

 

Shell学习(shell介绍,历史,补全,通配符等)-2018.12.17_第5张图片 标错误重定向及正确错误重定向题

你可能感兴趣的:(Shell)