2019-12-06站在用户登录角度shell的分类及bash的配置文件

站在用户登录角度来说,shell的类型

  1. 登录式shell
    ①正常通常某终端登录
    ②su - USERNAME
    ③su -l USERNAME
  2. 非登录式shell
    ①su USERNAME
    ②图形终端下打开的命令窗口
    ③自动执行的shell脚本

要想了解他们之间的不同需要先了解bash的配置文件及各类文件的作用

bash的配置文件

  1. 全局配置
    /etc/profile,/etc/profile.d/*.sh, /etc/bashrc
  2. 个人配置
    ~/.bash_profile, ~/.bashrc

profile类的文件

  1. 设定环境变量:
    ①在/etc/profile,/etc/profile.d/*.sh, 定义的环境变量对全部的用户起作用。
    ②在~/.bash_profile定义的环境变量只对当前用户起作用。
  2. 运行命令或脚本:在用户登录之前运行相对应的命令和脚本做好准备工作。

bashrc类的文件

  1. 设定本地变量
  2. 定义命令别名

登录式与非登录式shell的区别

  1. 登陆式shell如何读取配置文件
    /etc/profile→/etc/profile.d/*.sh→~/.bash_profile→ ~/.bashrc→etc/bashrc
  2. 非登录式shell如何读取配置文件
    ~/.bashrc→etc/bashrc→/etc/profile.d/*.sh

永久定义命令别名

  • 编辑家目录下的.bashrc:在中间添加alias CMDALIAS=‘COMMAND’就可以在此用户下此命令别名永久有效

登录提示语

  • 编辑~/.bash_profile:在最后添加
    echo “hello,USERNAME,welcome to our system,it is $(date)”.

设置永久的umask(不随用户退出而恢复为002或022)

  • 编辑~/.bash_profile:在最后添加
    umast 数字

你可能感兴趣的:(2019-12-06站在用户登录角度shell的分类及bash的配置文件)