shell预习笔记

什么是shell
命令解释器,提供用户和机器之间的交互
支持特定语法,比如逻辑判断、循环
每个用户都有特定的shell
centos默认的shell版本是bash
命令历史
history命令
最大保存一千条 echo $HISTSIZE
history -c 清除当前内存中的命令历史
/etc/profile 修改命令历史最大数值
HISTTIMEFORMAT="%Y/%m%wd %H%M%S"
永久保存命令历史 chattr +a ~/.bash_history
!! 表示执行上一条命令
!n n指数字,表示执行历史中第n条命令
!字符串 例如!pw表示执行命令历史中最近一次以pw开头的命令
命令补全和文件补全
tab命令
连续敲两次会把所有的命令或者文件名都列出来
yum install -y bash-completion 重启系统自动补充参数
alias 别名
别名存放地址 .bashrc /etc/profile.d/ colorgrep.sh
取消自定义的别名 unalias restat
通配符

  • 来匹配零个或多个字符
    ?匹配一个字符
    【】范围
    {}范围要加逗号
    输入/输出重定向

    重定向 2>错误重定向
    > 追加 2>>错误追加
    +2> == &>
    < 输入重定向 (文件到命令)
    管道符、作业控制
    ctrl z 暂停进程
    ctrl c 结束进程
    fg 命令恢复 bg 使它到后台运行
    jobs 列出后台的进程
    & 一次性到后台运行
    变量
    path,shell预设的一个变量
    shell预设的变量都是大写的
    path代替了所有常用命令的绝对路径的设定
    env 列出系统预设的全部变量
    set 不仅可以显示系统预设的变量,也可以显示用户的自定义变量(该变量只能在当前shell中生效)
    变量名规则:字母、数字(不能在首位)、下划线
    变量值有特殊符号时需要用单引号括起来
    全局变量 export 变量名=等于变量值
    unset 取消变量
    环境变量配置文件
    bash可以重新打开一个shell
    /etc/profile 这个文件预设了几个重要变量
    /etc/bashrc 这个文件主要预设umask以及ps1
    \u指用户,\h指主机名,\w指当前目录,\$指字符#(如果是普通用户,则显示为$)
    .bash_profile 该文件定义了用户的个人化路径与环境变量的文件名称
    .bashrc 该文件包含专属于自己的shell的bash信息,当登录或每次打开新的shell时,该文件会被读取
    .bash_history 该文件用于记录命令历史
    .bash_logout 当退出shell时,会执行该文件

猜你喜欢

转载自blog.51cto.com/14016832/2312761