什么是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时,会执行该文件