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. 面试官:RabbitMQ过期时间设置、死信队列、延时队列怎么设计?

    哈喽!大家好,我是小奇,一位不靠谱的程序员 小奇打算以轻松幽默的对话方式来分享一些技术,如果你觉得通过小奇的文章学到了东西,那就给小奇一个赞吧 文章持续更新 一.前言 RabbitMQ我们经常的使用, ...

  2. 阶段性总结linux(1)

    学习安装linux系统 [网络连接方式] 桥接 ,好比所有人都在25期教室,公用这个教室的局域网段 192.168.11.0~192.168.11.255 教室内有60个同学,插上了网线,所有人都是 ...

  3. 【Java分享客栈】我曾经的两个Java老师一个找不到工作了一个被迫转行了

    前言 写这篇文章的初衷主要是最近发生了两件事,让我感慨良多,觉得踏入这个行业的初始,有些事情就应该长远考虑,这样对职业发展才更有利,仅仅停留在技术的追求上固然能壮大自身,可逆水行舟的程序员们终究会面临 ...

  4. Flume 详解&实战

    Flume 1. 概述 Flume是一个高可用,高可靠,分布式的海量日志采集.聚合和传输的系统.Flume基于流式架构,灵活简单. Flume的作用 Flume最主要的作用就是,实时读取服务器本地磁盘 ...

  5. JAVA 基础(1)开发环境的搭建以及开发工具的选择

    ​  我们现在还是在学习阶段因此我们不用配置那么多的jdk,配置一个jdk8就够应付日常的学习了.前面的文章我尽量写详细一些照顾刚入坑的朋友.后文还有教大家怎么使用企业版的idea. 一.开发环境的搭 ...

  6. 【论文笔记】A review of applications in federated learning(综述)

    A review of applications in federated learning Authors Li Li, Yuxi Fan, Mike Tse, Kuo-Yi Lin Keyword ...

  7. 测试覆盖率 之 Cobertura的使用

    什么是代码覆盖率? 代码覆盖率是对整个测试过程中被执行的代码的衡量,它能测量源代码中的哪些语句在测试中被执行,哪些语句尚未被执行. 为什么要测量代码覆盖率? 众所周知,测试可以提高软件版本的质量和可预 ...

  8. CVE-2021-35042

    CVE-2021-35042 漏洞介绍 Django 是 Python 语言驱动的一个开源模型-视图-控制器(MVC)风格的 Web 应用程序框架. 漏洞影响版本:django 3.1.3.2 202 ...

  9. 弃用!Github 上用了 Git.io 缩址服务的都注意了

    GitHub 是面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub.对程序员来说,GitHub 可以说是开源精神之所系.在 GitHub 任何职业程 ...

  10. opencv学习之基础

    前段时间一直在钻研深度学习中的卷积神经网络,其中的预处理环节可以说非常关键,主要就是对图片和视频进行处理.而图像处理就涉及到图形学和底层技术细节,这是一个比较精深和专业的领域,假设我们要从头开始做起, ...