交互式shell和profile的区别,你知道吗?
转自:/u010127245/article/details/51689636
bashrc与profile的区别
bashrc与profile的区别,首先要弄明白哪些是交互式shell和非交互式shell,哪些是loginshell和non-loginshell。
交互式模式就是shell等待你的输入,但是执行你递交的命令。这些模式被叫做交互式是由于shell与用户进行交互。这些模式也是大多数用户特别熟悉的:登陆、执行一些命令、签退。当你签后退,shell也中止了。
shell也可以运行在另外一种模式:非交互式模式。在这些模式下,shell不与你进行交互android linux,而是读取储存在文件中的命令,但是执行它们。当它读到文件的结尾,shell也就中止了。
bashrc与profile都用于保存用户的环境信息,bashrc用于交互式non-loginshelllinux安装交叉编译环境变量,而profile用于交互式loginshell。系统中存在许多bashrc和profile文件,下边逐一介绍:
/etc/pro此文件为系统的每位用户设置环境信息,当第一个用户登入时,该文件被执行.
并从/etc/profile.d目录的配置文件中搜集shell的设置.
/etc/bashrc:为每一个运行bashshell的用户执行此文件.当bashshell被打开时,该文件被读取。有些linux版本中的/etc目录下早已没有了bashrc文件。
~/.pro每位用户都可使用该文件输入专用于自己使用的shell信息,当用户登入时,该
文件仅仅执行一次!默认情况下,它设置一些环境变量,之后执行用户的.bashrc文件.
~/.bashrc:该文件包含专用于某个用户的bashshell的bash信息,当该用户登入时以及每次打开新的shell时,该文件被读取.
另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能承继/etc/profile中的变量,她们是"兄妹"关系.
总结:
/etc/profile,/etc/bashrc是系统全局环境变量设定
~/.profile,~/.bashrc用户家目录下的私有环境变量设定
当登录系统时侯获得一个shell进程时,其读取环境设定档有三步
1首先读入的是全局环境变量设定档/etc/profile,之后按照其内容读取额外的设定的文档,如
/etc/profile.d和/etc/inputrc
2之后依照不同使用者账号,去其家目录读取~/.bash_profile,倘若这读取不了就读取~/.bash_login,这个也读取不了才能读取
~/.profile,这三个文档设定基本上是一样的,读取有优先关系
3之后在按照用户账号读取~/.bashrc
至于~/.profile与~/.bashrc的不区别
都具有个性化订制功能
~/.profile可以设定本用户专有的路径linux系统装win7,环境变量,等,它只能登陆的时侯执行一次
~/.bashrc也是某用户专有设定文档,可以设定路径,命令别称,每次shellscript的执行就会使用它一次
【环境变量配置的三个方式】
如想将一个路径加入到$PATH中,可以像下边这样做:
1.控制台北,不赞同使用这些技巧,由于换个shelllinux安装交叉编译环境变量,你的设置就无效了,因而这些方式仅仅是临时使用,之后要使用的时侯又要重新设置,比较麻烦。这个只针对特定的shell;
$PATH="$PATH:/my_new_path"(关掉shell,会还原PATH)
2.
更改/etc/profile文件,假如你的计算机仅仅作为开发使用时推荐使用这些技巧,由于所有用户的shell都有权使用这种环境变量,可能会给系统带来安全性问题。(JDK配置推荐)
这儿是针对所有的用户的,所有的shell;
$vi/etc/profile在上面加入:
exportPATH="$PATH:/my_new_path"
3.
更改.bashrc文件,这些技巧更为安全,它可以把使用这种环境变量的权限控制到用户级别,这儿是针对某一个特定的用户,假如你须要给某个用户权限使用这种环境变量,你只须要更改其个人用房主目录下的.bashrc文件就可以了。
$vi/root/.bashrc在上面加入:
exportPATH="$PATH:/my_new_path"
后两种方式通常须要重新注销系统才会生效(可以直接使用$source~/.profile刷新来防止重启),最后可以通过echo命令测试一下:
$echo$PATH输出早已是新路径了。
以上是交互式shell和profile的区别,你知道吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

Linux 命令行界面提供了丰富的文本处理工具,其中最强大的工具之一是 sed 命令。sed 是 Stream EDitor 的缩写,是一个多功能工具,允许对文本文件和流进行复杂的处理。 什么是 Sed? sed 是一款非交互式文本编辑器,它操作管道输入或文本文件。通过提供指令,您可以让它修改和处理文件或流中的文本。sed 最常见的用例包括选择文本、替换文本、修改原始文件、向文本添加行或从文本中删除行等操作。它可以在 Bash 和其他命令行 shell 中从命令行使用。 Sed 命令语法 sed

有效地计数Linux中的文件和文件夹:综合指南 知道如何快速计算Linux中的文件和目录对于系统管理员和管理大型数据集的任何人至关重要。本指南使用简单命令l演示

有效管理用户帐户和组成员资格对于Linux/UNIX系统管理至关重要。 这样可以确保适当的资源和数据访问控制。 本教程详细介绍了如何将用户添加到Linux和Unix系统中的多个组中。 我们

Linux内核是GNU/Linux操作系统的核心组件。由Linus Torvalds于1991年开发,是一种免费的开源,单片,模块化和多任务Unix样核。在Linux中,可以在Sing上安装多个内核

介绍 在Linux领域,命令行通常是我们导航的指南针,磁盘空间的有效管理至关重要。无论您是通过个人项目航行还是转向O

该简短指南说明了如何在Linux操作系统中键入印度卢比符号。前几天,我想在Word文档中键入“ Indian Rupee符号(€)”。我的键盘上有一个卢比符号,但我不知道如何键入它。后

Linus Torvalds已发布Linux内核6.14释放候选6(RC6),报告没有重大问题并保持发布能力。此更新中最值得注意的更改地址是AMD Microcode签名问题,而其余更新

Linux系统8款最佳SSH客户端推荐 SSH(安全外壳协议)是一种加密网络协议,用于在不安全的网络上安全地运行网络服务。它是现代服务器管理的重要组成部分,提供对系统的安全远程访问。SSH客户端(利用SSH协议的应用程序)是系统管理员、开发人员和IT专业人员必不可少的工具。在Linux世界中,远程服务器管理很常见,选择合适的SSH客户端至关重要。本文将探讨8款适用于Linux的最佳SSH客户端。 选择标准 选择Linux最佳SSH客户端时,必须考虑以下几个因素: 性能: SSH客户端的速度和效
