shell配置文件分类

  • 按生效范围分类:全局和局部
  • 按登录方式分类:交互式和非交互式
  • 按功能分类:profile和bashrc

shell配置文件按生效范围分类:

全局配置:针对有所用户有效

/etc/profile

/etc/profile.d/*.sh

/etc/bashrc

位于/etc下面的就是全局配置文件

局部配置:针对特定用户有效

~/.bash_profile

~/.bashrc

位于用户家目录下面的就是局部配置文件

shell登录的两种方式

交互式登录

  1. 使用终端输入账号密码登录
  2. 使用 su - UserName 切换的用户(完全切换)

配置文件生效顺序:

#如果在配置文件种添加的指令放在每个配置文件最前面

/etc/profile

/etc/profile.d/. sh

/etc/bashrc

~/ .bash_ profile

~/ .bashrc

/etc/bashrc

rc:run command

#若在配置文件种添加的指令放在每个配置文件最后面

/etc/profile.d/
.sh

/etc/bashrc

/etc/profile

/etc/bashrc    #此文件执行两次

~/.bashrc

~/.bash_profile

特点:写在同一个文件的不同位置,将影响文件的执行顺序

非交互式登录:

  1. su UserName(不完全切换)
  2. 图形界面下打开的终端
  3. 执行脚本
  4. 任何其它的bash实例

配置文件执行顺序:

/etc/profile.d/*.sh

/etc/bashrc

~/.bashrc

shell配置文件按功能分类

profile类和bashrc类

(1) Profile类

profile类为交互式登录的shell提供配置

全局:/etc/profile, /etc/profile.d/*.sh

个人:~/.bash_profile

功用:(人为规定,非强制)

(1) 用于定义环境变量

(2) 运行命令或脚本

(2) Bashrc类

bashrc类:为非交互式和交互式登录的shell提供配置

全局:/etc/bashrc

个人:~/.bashrc

功用:(人为规定,非强制)

(1) 定义命令别名和函数

(2) 定义本地变量

编辑shell配置文件生效

shell配置文件再登录的时候才会运行。

修改shell的配置文件以后,生效的两种方法

方法一:重新启动shell,比如退出以后再登录

方法二:使用source命令 格式: source 配置文件(点(.) 配置文件)

注意:source 会在当前shell中执行脚本,所有一般只用于执行置文件,或在脚本中调用另一个脚本的场景

Bash 退出任务

保存在~/.bash_logout文件中(用户),在退出登录shell时运行

用户退出的时候触发

功能:

创建自动备份

清除临时文件

Linux shell环境的配置的更多相关文章

  1. 20145213《信息安全系统设计基础》实验一 Linux开发环境的配置

    北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全系统设计基础 班级:1452 姓名: 黄亚奇 祁玮 学号:20145213 20145222 成绩: 指导教师:娄嘉鹏 实验日期:2016 ...

  2. 信息安全系统设计基础实验一:Linux开发环境的配置和使用

    北京电子科技学院(BESTI) 实验报告 课程:信息安全系统设计基础    班级:1353 姓名:芦畅 傅冬菁 学号:20135308 20135311 成绩:       指导教师:娄家鹏      ...

  3. Linux下环境变量配置方法梳理(.bash_profile和.bashrc的区别)

    在linux系统下,如果下载并安装了应用程序,在启动时很有可能在键入它的名称时出现"command not found"的提示内容.如果每次都到安装目标文件夹内,找到可执行文件来进 ...

  4. Linux SHELL,环境变量

    SHELL: 在计算机科学中,Shell俗称壳(用来区别于核),是指"提供使用者使用界面"的软件(命令解析器).它类似于DOS下的command和后来的cmd.exe.它接收用户命 ...

  5. Linux登录shell和非登录(交互式shell)环境变量配置

    使用Jenkins执行shell脚本的时候, 碰到command not found. 比如java mvn, 这些环境变量配置在/etc/profile 中, 但jenkins执行的时候并没有加载. ...

  6. Linux - Shell变量的配置守则

    变量的配置守则 变量与变量内容以一个等号『=』来连结,如下所示: 『myname=VBird』 等号两边不能直接接空格符,如下所示为错误: 『myname = VBird』或『myname=VBird ...

  7. Linux shell 环境变量及有效范围

    每当我们使用ssh客户端远程登陆一个服务时,操作系统就会给我们分配一个新的shell,并且这个shell继承了操作系统的永久环境变量.在当前的shell执行一个sh文件,都会临时产生一个子shell, ...

  8. linux 项目环境搭建配置

    经过三天加一上午的努力折腾,本地项目终于跑起来了,linux系统,重装后需要安装基本的php,nginx,mysql.php扩展需要安装curl ,memcache,memcached等.然后就是修改 ...

  9. Linux的环境变量配置

    以下都是环境变量相关的配置文件 1)/etc/enviroment 是系统的环境变量. (2)/etc/profile: 是所有用户的环境变量.当用户第一次登录时,该文件被执行. 并从/etc/pro ...

随机推荐

  1. echarts踩坑总结

    1,有关echarts引用的相关报错直接写这句  import * as echarts from 'echarts' 2,折线图 chartsObj = { tooltip: { trigger: ...

  2. 分布式任务调度平台XXL-JOB安装及使用

    一.为什么需要任务调度平台 在Java中,传统的定时任务实现方案,比如Timer,Quartz等都或多或少存在一些问题: 不支持集群.不支持统计.没有管理平台.没有失败报警.没有监控等等而且在现在分布 ...

  3. LintCode-282 · 解压字符串-题解

    题目链接:https://www.lintcode.com/problem/282/description?_from=collection&fromId=208描述:小Q想要给他的朋友发送一 ...

  4. /proc/meminfo 解释

  5. Python技法:实现简单的递归下降Parser

    1. 算术运算表达式求值 在上一篇博文<Python技法:用re模块实现简易tokenizer>中,我们介绍了用正则表达式来匹配对应的模式,以实现简单的分词器.然而,正则表达式不是万能的, ...

  6. asp.net swagger的使用

    最近要从其他系统获取一些数据,准备写个接口让别人把数据塞进来,顺便学习一下如何使用Swagger. 参考大神的教程:asp.net  https://mp.weixin.qq.com/s/SHNNQo ...

  7. OpenStack计费服务

    cloudkitty服务介绍 当前版本cloudkitty可以完成虚拟机实例(compute),云硬盘(volume),镜像(image),网络进出流量(network.bw.in,network.b ...

  8. CSAPP 之 DataLab 详解

    前言 本篇博客将会剖析 CSAPP - DataLab 各个习题的解题过程,加深对 int.unsigned.float 这几种数据类型的计算机表示方式的理解. DataLab 中包含下表所示的 12 ...

  9. 百万数据 mysql count(*)优化

    一.故事背景有一张 500w 左右的表做 select count(*) 速度特别慢. 二.原 SQL 分析Server version: 5.7.24-log MySQL Community Ser ...

  10. redis的Linux系统安装与配置、redis的api使用、高级用法之慢查询、pipline事物

    今日内容概要 redis 的linux安装和配置 redis 的api使用 高级用法之慢查询 pipline事务 内容详细 1.redis 的linux安装和配置 # redis 版本选择问题 -最新 ...