2. shell之shell配置文件
- 1. shell配置文件的位置
最常用的shell有sh和bash等,此处只讲sh和bash
1.1. sh(Bourne Shell)配置文件主要有两个,分别为每个用户主目录中的.profile文件以及/etc/profile文件,前者是用户独有的,后者是所有用户共有的;.profile是在profile(有点复杂,不太明白)之后运行的,不具体讲解
1.2. bash(Bourne-Again Shell)配置文件主要有5个,其中4个位于用户主目录中,有一位位于/etc中;
bash_history 操作历史命令存放文件,只有当注销时,才会把用户登录过程中的操作命令写入到文件中,登录过程中执行的命令,不会立即写入文件,而是写在内存中。
.bash_logout文件在当前用户每次退出shell时执行,如果没特别要求,该文件内容为空
.bash_profile用来保存每个用户自己使用的shell信息;常用来设置环境变量,执行用户的.bashrc文件;下面的代码是某root用户的
# .bash_profile # Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi # User specific environment and startup programs PATH=$PATH:$HOME/bin export PATH.bash_profile文件内容从上面的代码可以看出,第5行调用用户主目录中的./bashrc文件,第10行设置PATH系统变量;第12行将系统变量导出
./bashrc包含专属于某个用户的bash的相关信息,下面的代码是某root用户的.bashrc文件内容
# .bashrc # User specific aliases and functions alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i' # Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi export PATH=/usr/local/arm/4.3.2/bin:$PATH从上面内容可知,该文件主要用于定义别名和函数,例如第5行定义了别名;另外第11行还调用/etc/bashrc,第14行还设置PATH系统变量
/etc/bashrc与sh中的/etc/profile文件非常相似,它是所有的用户共同使用的文件,任何用户登录bash都会执行
作用:
1) 定义PS1(命令提示符)变量
2) umask
3) 定义PATH变量
4) 调用/etc/profile.d/*.sh文件
注意: linux不建议用户直接修改/etc/profile或者/etc/bashrc文件,应该尽量将用户的配置放在用户主目录中的对应文件中
2. 命令
2.1. source命令
[root@localhost ~]# source /etc/profile #让/etc/profile配置文件生效
[root@localhost ~]# ./etc/profile #与上面的命令效果一样功能:在当前bash环境下读取并执行配置文件中的命令
3. 环境变量文件执行顺序
这个流程图还是不太明白!!如果各位知道的话,留下一个连接,在此谢过各位了!!
2. shell之shell配置文件的更多相关文章
- 分享:shell去掉linux配置文件的注释行
如何通过shell去掉Linux配置文件中的注释行呢? 本文给出两种解决方法,供大家参考. 方法1.使用grep -v "^#" 来去掉注释行,其中:-v 表示取反 ^# 表示注解 ...
- Bash Shell的环境配置文件
login shell:取得bash时需要完整的登录流程 non-login shell:取得bash接口的方法不需要重复登录,举例来说,你以x window登录Linux后,再以x的图形界面启动终端 ...
- Linux Shell常用shell命令
Linux Shell常用shell命令 一.文件.目录操作命令 1.ls命令 功能:显示文件和目录的信息 ls 以默认方式显示当前目录文件列表 ls -a 显示所有文件包括隐藏文件 ls -l 显示 ...
- Shell学习——Shell分类:登录shell和非登陆shell 交互shell和非交互shell
1.从两个不同维度来划分,是否交互式,是否登录 2.交互式shell和非交互式shell 交互式模式:在终端上执行,shell等待你的输入,并且立即执行你提交的命令.这种模式被称作交互式是因为shel ...
- 【shell】shell脚本入门
1. 前言 1.1 为什么学习shell编程 Shell脚本语言是实现Linux/UNIX系统管理及自动化运维所必备的重要工具,Linux/UNIX系统的底层及基础应用软件的核心大部分涉及Shell脚 ...
- 我们一起来学Shell - 初识shell
文章目录 Shell 的分类 `bash` `csh` `ksh` `tcsh` `sh` `nologin` `zsh` Shell 能做什么 bash 环境变量文件 `/etc/profile` ...
- 转:shell 经典, shell 十三问
原文链接:http://blog.csdn.net/freexploit/article/details/626660 我在 CU 的日子并不长,有幸在 shell 版上与大家结缘.除了跟众前辈学 ...
- [翻译].NET Shell Extensions - Shell Context Menus---.net 外壳扩展-右键菜单
我自己的前言说明: 本文原作者为 Dave Kerr,原文链接为.NET Shell Extensions - Shell Context Menus:,我是在为了完成最新需求的时候查询资料的时 ...
- [拾 得] 一枚迷人的贝壳 SHELL / Linux | shell 脚本初步入门
坚持知识分享,该文章由Alopex编著, 转载请注明源地址: http://www.cnblogs.com/alopex/ 索引: 什么是shell shell的分类 shell脚本的执行方式 ...
- CMD & Git Shell & Bash Shell
CMD & Git Shell & Bash Shell https://mvdan.cc/sh/cmd/shfmt PC
随机推荐
- 如何配置Java环境
下载JDK并安装 搜索JDK,官网立马就出来了,下载之后个人觉得毕竟开发,毕竟这东西不大,C盘稳一点,安装在C盘可以的 配置 右键打开计算机->属性->高级系统设置->高级-> ...
- poj1947Rebuilding Roads(树形DP)
链接 刚接触 树上背包..有点抽象化 找好父亲和儿子的关系 及状态转移方程 代码里有详细的注释 就不解释了 #include <iostream> #include<cstdio& ...
- USCAO3.26Sweet Butter(SPFA)
最短路复杂度估计错误 以为SPFA是N*m的 用了dij超时 用SPFA直接跑就好了 O(k*e) K 一般为2,3: /* ID: shangca2 LANG: C++ TASK: butter * ...
- mapreduce: InputFormat详解 -- RecordReader篇
InputFormat是MapReduce中一个很常用的概念,它在程序的运行中到底起到了什么作用呢? InputFormat其实是一个接口,包含了两个方法: public interface Inpu ...
- Rabin-Miller算法
首先附上matrix67大神的讲解: --------------------------------------------------------------------------------- ...
- [King.yue]关于代码调试时的缓存问题的一个解决办法
后台构造数据更改之后,页面数据一直不变,试过各种办法,清空浏览器缓存,停止端口重新运行,关掉程序重新打开,都不可以.最终全部重新生成之后,终于可以正常调试了. 另:调试ASP.NET网站程序的时候,为 ...
- ios之UI中自定义cell
*:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...
- 华为过滤字符串(java)
/*通过键盘输入一串小写字母(a~z)组成的字符串.请编写一个字符串过滤程序,若字符串中出现多个相同的字符,将非首次出现的字符过滤掉.比如字符串“abacacde”过滤结果为“abcde”.要求实现函 ...
- HW4.7
public class Solution { public static void main(String[] args) { double rate = 0.05; double balance ...
- if
语句快中的变量与函数的局部变量关系;