环境变量与用户自定义变量的区别
- 环境变量是全局变量,用户自定义变量是局部变量。
- 用户自定义变量只在当前的 shell 中生效,环境变量在当前 shell 和这个 shell 的所有子 shell 中生效。
- 用户可以自定义环境变量,但对系统生效的环境变量名和变量作用是固定的。
用户自定义环境变量
调用使用【$变量名】
- export 变量名=变量值
- 或者
- 变量名=变量值:先声明
- export 变量名:再export
小结:export的变量在当前 shell 和这个 shell 的所有子 shell 中生效,自定义的变量只在当前shell中生效
查看环境变量
- set 查看所有变量
- env 查看环境变量
删除环境变量
- unset 环境名(即变量名)
常见的系统环境变量
- HOSTNAME:主机名
- SHELL:当前的 shell
- TERM:终端环境
- HISTSIZE:历史命令条数
- SSH_CLIENT:当前操作环境是用 ssh 连接的,这里记录客户端 ip
- SSH_TTY:ssh 连接的终端是 pts/0
- USER:当前登录的用户
- PATH:系统搜索命令的路径
要想直接通过脚本名执行自己的脚本
即将脚本路径添加到PATH中,或者将脚本放到PATH中任意目录下
- 将脚本拷贝至 PATH 中的任意目录下(不建议这样做),例如: $ cp hello.sh /bin/
- 将脚本所在目录添加到 PATH 变量中,例如: $ PATH="$PATH":/root/sh
- 系统重启后失效
PS1:命令提示符设置
- \d:显示日期,格式为"星期 月 日"
- \H:显示完整的主机名
- \t:显示 24 小时制时间,格式为"HH:MM:SS"
- \A:显示 24 小时制时间,格式为"HH:MM"
- \u:显示当前用户名
- \w:显示当前所在目录的完整名称
- \W:显示当前所在目录的最后一个目录
- \$:提示符。root 用户为"#",普通用户为"$"