bash的环境配置文件

1. login shell 和 non-login shell

login shell 和 non-login shell 区别在于登录 login。

login shell : 通过完整的登录流程, 举例:通过tty1-tty6 登录,需要输入用户的账号和密码,此时取得的 bash 就是 login shell。

non-login shell : 取得bash接口的方法不需要重复登陆,比如下面两种方法:

1, 以 X Window登录linux后, 再以 X 的图形界面启动终端机,此时这个终端没有再次输入用户名和密码,这个bash环境为 non-login shell

2, 在原bash下再次执行bash,同样没有输入用户名和密码,此时第二个bash,子进程,为non-login shell。

login shell 与 non-login shell 读取的配置文件不一样。

2. login shell

login shell 读取两个配置文件:

1. /etc/profile

2. ~/.bash_profile,或 ~/.bash_login, 或 ~/.profile。

2.1 /etc/profile

这个配置为用户整体的配置,最好不要修改这个文件,除非给所有用户设置整体环境。

这个文件设置的变量主要有:

PATH : 跟据用户设置

USER: 用户名

HOSTNAME: 主机名

HISTSIZE : 历史命令条数

该文件会调用下面文件:

/etc/inputrc : 主要设置bash 热键,[Tab] 有没有声音等。

/etc/profile.d/*.sh : 主要规定bash接口的颜色,语系等,如果要给所有用户设置配置变量时,在/etc/profile.d/目录下,建 .sh 文件。

/etc/sysconfig/i18n: 该文件由/etc/profile.d/lang.sh 文件调用, 设置bash默认使用哪种语系。

2.2 ~/.bash_profile

bash读取完整体环境变量/etc/profile 后会读取个人用户配置。主要有下面三个文件:

1. ~/.bash_profile

2. ~/.bash_login

3. ~/.profile

只会读取其中一个文件,顺序为上面的顺序,只要前面文件存在,后面则不再读取。

$ vim ~/.bash_profile 

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH
unset USERNAME

该文件会读取 ~/.bashrc 文件。

source和. 为读入配置文件。

]$ source .bashrc
]$ . .bashrc 

3. non-login shell

non-login shell 会读取 ~/.bashrc

查看该文件:

# .bashrc

# User specific aliases and functions

# Source global definitions
if [ -f /etc/bashrc ]; then
    . /etc/bashrc
fi

alias rm='rm -i'

会读取 /etc/bashrc

该文件会设置:

跟据UID设置umask

PS1: 提示符

调用/etc/profile.d/*.sh

4. 其他配置

/etc/man.config 配置手册的目录,man 命令

~/.bash_history 记录bash的历史命令

~/.bash_logout 注销bash时,希望系统做的一些处理。

地址:http://blog.csdn.net/yonggang7/article/details/40953363

时间: 2024-12-17 11:02:07

bash的环境配置文件的相关文章

bash的环境配置文件(系统开机、加载文件变量的方式)

1.了解下面两个shell 文件 login shell 文件:登录的时候的shell (需要输入密码) no-login shell 文件:登录的时候打开的终端(系统会自动连接一个shell且不会输入密码那些) 2.登录时读取的配置文件(环境变量) ①.登录时会加载以下几个配置文件(是对于所有用户的配置文件.且按顺序加载.最好不要修改这几个配置文件) /etc/profile 该文件设置了整个环境的全局变量 <不要修改> /etc/inputrc 该文件里面包含了所有的快捷键 /etc/pr

Bash环境配置文件

一.环境配置文件读取优先级 其中~/.bash_profile,~/.bash_login,~/.profile三个文件只有一个有效,查找优先级从左至右降低.bash会一直检查是否有~/.bashrc,一旦发现有就立即执行.在ubuntu 10.04中, /etc/profile存在,用户主目录下有.bashrc文件. 二.环境配置文件简介 1./etc/profile 由系统管理程序建立的一个全系统(sytstem-wide)的初始化文件,Shell提示符出现在屏幕上之前,该文件就被读取了.功

bash的环境变量配置文件

日期: 2015年08月30日 bash的配置文件 bash的配置文件用来配置bash的使用环境,在系统中保存这诸多事先定义好的变量 bash的环境变量常见的有: PATH:命令搜索路径 HISTFILE:命令历史的保存位置 SHELL:当前用户使用的 HOME:当前用户的家目录 变量的类型: 本地变量:只对当前shell进程有效,对其子shell以及其它shell都无效: 定义变量: [set]Var_Name="Value" 引用变量: ${Var_Name} 撤销变量: unse

linux环境配置文件分类

Linux的环境配置文件分两大类,一类是针对所有用户,一类是针对当前用户.(以下均以ubuntu为例,其他发行版大同小异) 针对所有用户的: /etc/profile--用户登录时会被执行,需要重新加载才能生效. /etc/bash.bashrc--用户打开bash shell时执行,重新开一个shell即可生效. 同理,针对单个用户的: ~/.profile--用户登录时执行,需要重新加载才能生效. ~/.bashrc--用户打开bash shell时执行,重新开一个shell即可生效. 在配

linux基础——bash shell环境配置

想要用好bash shell,首先得搞清楚bash shell环境的配置,只有配置好了,我们用起来才会得心应手,要想配置好,必须了解清楚bash配置文件的类型,再根据实际需求做一些相应的添加或修改就可以了.一.bash的配置文件(一)按生效范围划分:全局配置.个人配置 1.全局配置:  /etc/profile  /etc/profile.d/*.sh  /etc/bashrc 2.个人配置:  ~/.bash_profile  ~/.bashrc (二)按功能划分:profiile类.bash

Bash多个配置文件通常用于

Login shells阅读下面的启动文件: 文件 内容 /etc/profile 对全部用户开放的全局配置文件 ~/.bash_profile 某个用户个人的启动文件,能用作个人的全局设置 ~/.bash_login 假设 ~/.bash_profile找不到.则bash尝试读取这个脚本 ~/.profile 假设这两个文件~/.bash_profile, ~/.bash_login 都找不到.bash就读取这个文件,这是个默认文件 NOTE: export PATH=$PATH:direct

BASH操作环境的一些笔记

首先,登陆的shell分为 login 与 non-login shell login shell:取得 bash 时需要完整的登陆流程的,就称为 login shell.举例来说,你要由 tty1 ~ tty6 登陆,需要输入用户的账号与密码,此时取得的 bash 就称为『 login shell 』啰: non-login shell:取得 bash 接口的方法不需要重复登陆的举动,举例来说,(1)你以 X window 登陆 Linux 后, 再以 X 的图形化接口启动终端机,此时那个终端

学习鸟哥私房菜--linux bash 的环境变量ps1设置

bash里边的变量ps1是用户平时的提示符,系统默认为[[email protected] 工作目录]$.关于ps1的相关介绍详见:http://www.cnblogs.com/starspace/archive/2009/02/21/1395382.html 文章里边介绍了要想ps1的修改在重启有效需要将它写入~/.bash_profile中,但是这是针对login shell的(即各种tty终端界面等),对于进入xwindow启动的命令行终端这样的nonlogin shell就不管用了,这是

bash功能特性六 bash操作环境

一.bash查找命令的顺序 1.以相对路径或绝对路径执行的命令: 2.由alias找到该命令来执行: 3.由bash内置的命令来执行: 4.通过$PATH这个变量的顺序找到的第一个命令来执行. 另外,命令只有在第一次执行真正查找操作,而查找结果会缓存,再次使用时直接从缓存中调用: 查看此缓存使用hash命令: -d:清除缓存内容: -r:清空缓存. 二.环境配置文件  环境配置文件用于初始化bash的操作环境,根据用户的登录方式配置文件可以分为交互式登录和非交互式登录两类. 1.交互式登录 所谓