标签:bash配置文件介绍
很多在shell进程中定义的特性(如:别名)重启shell后就失效了,可以通过修改bash配置文件来解决重启配置丢失的问题。
bash配置文件分类:
profile类:为交互式登录的shell进程提供配置
bashrc类:为非交互式登陆的shell进程提供配置
登陆类型介绍:
交互式登录: 直接通过某终端输入账号密码后登陆打开的shell进程
使用su命令:su - username 或者使用su -l username执行的登陆切换
非交互式登陆: 使用su username执行的登陆切换
图形界面下打开的终端
运行的脚本
profile类配置文件:
全局配置文件:对所有用户都生效
配置文件路径:/etc/profile
/etc/profile.d/*.sh
局部配置文件:对特定用户生效,也叫个人配置文件
配置文件路径:~/.bash_profile //个人家目录下的隐藏文件 .bash_profile
profile类配置文件的作用:
用于定义环境变量;运行命令或脚本,用户登录时自动运行。
bashrc类配置文件:
全局配置文件:对所有用户都生效
配置文件路径:/etc/bashrc
局部配置:对特定用户生效,也叫个人配置文件
配置文件路径:~/.bashrc //个人家目录下的.bashrc
bashrc类配置文件的作用:
定义本地变量,使其一直有效;定义命令别名;
bash配置文件读取优先次序:
交互式shell进程:先后次序如下
/etc/profile---/etc/profile.d/*.sh---~/.bash_profile---~/.bashrc---/etc/bashrc
非交互式shell进程:先后次序如下:
~/.bashrc---/etc/bashrc---/etc/profile.d/*.sh
注意:命令行中定义的特性,例如变量和别名作用域为当前shell进程的生命周期。配置文件定义的特性,只对随后新启动的shell进程有效。
让通过设定配置文件的特性立即生效办法如下:
方法一:通过命令行重复定义一次
方法二:让shell进程重新读取配置文件,命令如下:
~]#source /path/to/conf_file //conf_file为配置文件
或~]. /path/to/conf_file //.是内嵌命令,conf_file为配置文件
问题:
如何定义对所有用户都生效的命令别名?例如:lftps=lftp x.x.x.x/pub
修改bashrc类配置文件/etc/bashrc
让centos用户登录时,提示其已经登陆,并显示当前系统时间。
修改 ~/.bash_frofile
标签:bash配置文件介绍
原文地址:http://10631377.blog.51cto.com/10621377/1971567