两类:shell
profile类:为交互式登陆的shell进程提供配置centos
bashrc类:为非交互式登陆的shell进程提供配置bash
登陆类型:命令行
交互式登陆shell进程:生命周期
直接经过某终端输入帐号和密码后登陆打开的shell进程;进程
使用su命令:su - username, 或者 su -l username 执行的切换作用域
非交互式登陆shell进程:class
su username 执行的用户登陆切换;登录
图形 界面打开的终端;变量
profile类:
全局配置:对全部用户都生效;
/etc/profile
/etc/profile.d/*.sh
用户我的:仅对当前用户有效
~/.bash_profile
功用:
1. 用户定义环境变量;
2. 运行命令脚本;
bashrc类:
全局:
/etc/bashrc
用户我的:
~/.bashrc
功用:
1.定义本地变量;
2.定义命令别名;
notice:仅管理员可修改全局配置文件;
交互式登陆shell进程:
/etc/profile --->> /etc/profile.d/* --->> ~/.bash_profile -->> ~/.bashrc -->> /etc/bashrc
非交互式登陆shell进程:
~/.bashrc -->> /etc/bashrc -->> /etc/profile.d/*
命令行定义的特性,例如变量和别名做用域为当前shell进程的生命周期;
配置文件定义的特性,只对随后新启动的shell进程有效;
让经过配置文件定义的特性当即生效:
(1)经过命令行重复定义一次;
(2)让shell进程重读配置文件;
~] # source /PATH/FROM/CONF_FILE
~] # ./PATH/FROM/CONF_FILE
问题:
(1)怎么定义对全部用户生效的命令别名,例如 ‘lftps="lftp 192.168.157.157/pub"’
(2)让centos用户登陆时,提供其已经登陆,并显示当前系统时间?