linux中shell的配置文件,linux的shell配置文件

linux的shell配置文件

linux

linux下有着众多的shell环境配置文件,如果不好好缕缕,确实会有点搞不清概念。

1、 /etc/profile

此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。

并从/etc/profile.d目录的配置文件中搜集shell的设置。

所以如果你有对/etc/profile有修改的话必须得重启你的修改才会生效,此修改对每个用户都生效。

2、/etc/bashrc

为每一个运行bash shell的用户执行此文件。当bash shell被打开时,该文件被读取。

如果你想对所有的使用bash的用户修改某个配置并在以后打开的bash都生效的话可以修改这个文件,修改这个文件不用重启,重新打开一个bash即可生效。

3、~/.bash_profile

每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该

文件仅仅执行一次!默认情况下,它设置一些环境变量,执行用户的.bashrc文件。

此文件类似于/etc/profile,也是需要需要重启才会生效,/etc/profile对所有用户生效,~/.bash_profile只对当前用户生效。

4、~/.bashrc

该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取。

5、~/.profile

Linux的Shell种类众多,常见的有:

Bourne Shell(/usr/bin/sh或/bin/sh)、

Bourne Again Shell(/bin/bash)、

C Shell(/usr/bin/csh)、

K Shell(/usr/bin/ksh)、

Shell for Root(/sbin/sh),等等。

不同的Shell语言的语法有所不同,所以不能交换使用。每种Shell都有其特色之处,基本上,掌握其中任何一种 就足够了。在本文中,我们关注的重点是Bash,也就是Bourne Again Shell,由于易用和免费,Bash在日常工作中被广泛使用;同时,Bash也是大多数Linux系统默认的Shell。

在一般情况下,人们并不区分 Bourne Shell和Bourne Again Shell,所以,在下面的文字中,我们可以看到#!/bin/sh,它同样也可以改为#!/bin/bash。

由于这层原因在Debian中使用.profile文件代 替.bash_profile文件以兼容不同的shell

.profile(由Bourne Shell和Korn Shell使用)和.login(由C Shell使用)两个文件是.bash_profile的同义词,目的是为了兼容其它Shell。

6、~/.bash_logout

当每次退出系统(退出bash shell)时,执行该文件

读取顺序

Shell配置文件可以分为系统级别的配置文件和用户级别的配置文件。 任何一种Shell都有用户级别的配置文件,以及对应的系统级别的配置文件。

系统级别的配置文件位于/etc下,这些配置会应用于所有用户。例如/etc/profile,/etc/bashrc。

用户级别的配置文件位于用户目录~下,通常会加一个.来隐藏。例如~/.profile,~/.bashrc。

在Shell启动时,会首先执行系统级别的配置文件(如果存在的话),再执行用户级别的配置文件。也就是说~/.bashrc中的配置会覆盖/etc/bashrc中的配置。

Login Shell(登录Shell)

Login Shell(登录Shell)是指该Shell被运行时用于用户登录,比如TTY中的Shell就是以登录Shell的状态在运行。

Non-login Shell(非登录Shell)是指在用户已登录情况下启动的那些Shell。 被自动执行的Shell也属于非登录Shell,它们的执行通常与用户登录无关。

例如你已经登陆了你的桌面电脑,这时候在应用管理器中找到termianl图标,然后双击打开终端,也就是通过像gnome,KDE这种桌面环境而进入的终端,这时候你进入的shell环境就是所谓的no-login shell环境。简而言之,就是把你想通过login shell运行的shell命令放入到.bash_profile中,把想通过no-login shell运行的shell命令放入到.bashrc文件中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值