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. Azure DevOps (十) 通过流水线完成Docker镜像的部署

    上一篇文章中,我们通过azure的流水线完成了镜像推送到镜像仓库中去,本篇文章我们继续开始完成下一步,通过流水线把镜像从仓库拉取到任意一台公网的服务器上去, 完成镜像部署的闭环. 首先我们需要先准备一 ...

  2. Codeforces Round #703 (Div. 2)__ B. Eastern Exhibition__ 纯纯的思维

    原题链接https://codeforces.com/contest/1486/problem/B 题目 解题思路 这是个思维题,  算是货仓选址的变式, 想要到达各个点距离最小,我们的目标可以化为先 ...

  3. 网络协议自动化逆向工具开山鼻祖discoverer 分析

    本文系原创,转载请说明出处:信安科研人 也可关注微信公众号:信安科研人 原论文发表在2007年的USENIX上,链接如下:https://www.usenix.org/legacy/event/sec ...

  4. Vue 生产环境(production) 打开 调试工具的方法

    总所周知,在production生产环境下,点击vue插件会显示, 并且按F12是没办法使用调试工具的,这样非常不方便 其实是有一个办法的,那就是复制下面的js,然后在控制台执行 代码中已经写清楚执行 ...

  5. k8s入门之Service(六)

    将一组pod公开为网络服务,通过service代理,可以实现负载均衡 一.ClusterIP 此方式只能在集群内访问 1.使用命令暴露已存在的pod (1)继续使用前面章节的案例,查看名称为nginx ...

  6. LCA的离线快速求法

    最常见的LCA(树上公共祖先)都是在线算法,往往带了一个log.有一种办法是转化为"+-1最值问题"得到O(n)+O(1)的复杂度,但是原理复杂,常数大.今天介绍一种允许离线时接近 ...

  7. CentOS 下 MySQL 8.0 安装部署,超详细!

    点击上方"开源Linux",选择"设为星标" 回复"学习"获取独家整理的学习资料! Mysql8.0安装 (YUM方式) 首先删除系统默认或 ...

  8. Git 使用心得 & 常见问题整理

    开源Linux 回复"读书",挑选书籍资料~ Git 流程图 Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remot ...

  9. CTF中常见密码学

    前言 参考,我们任课老师的WORD和PPT,结合自己的理解,在结合网上文章的理解. 一.BASE64编码 BASE64编码中,特征和所拥有的字符字母:A-Z a-z;数字:0-9;符号:+ / ,然后 ...

  10. mysql5.7介绍和安装

    环境准备: 1.关闭防火墙和selinux systemctl stop firewalldsystemctl stop SElinux 2. 如果安装过mariadb需要停止且卸载服务 system ...