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
随机推荐
- poj3368Frequent values(RMQ)
http://poj.org/problem?id=3368 追完韩剧 想起这题来了 想用线段树搞定来着 结果没想出来..然后想RMQ 想出来了 算是离散吧 把每个数出现的次数以及开始的位置及结束的位 ...
- bzoj1965
很明显,求方程x*2^m=L (mod n+1)的解(1<=x<=n) var n,m,l,x,y,p:int64; function quick(x:int64):int64; var ...
- Win系统下制作U盘CLOVER引导+安装原版Mavericks10.9
啃苹果有一段时间了,之前一直用白苹果,但是白苹果配置有所限制,对于我搞音频的人来讲,显得有点拖沓.所以研究了将近2年的黑苹果,最近心血来潮给大家一个比较傻瓜式的教程,首先强调一点,黑苹果是需要折腾的, ...
- spring3 mvc使用注解方式时,不能扫描jar包里面的类
使用eclipse export工具时选中Add directory entries可以解决.
- ZOJ3261 Connections in Galaxy War 并查集
分析:对于这种删边操作,我们通常可以先读进来,然后转化离线进行倒着加边 #include <stdio.h> #include <string.h> #include < ...
- [King.yue]Grid列选中JS控制按钮状态
Grid列选中一行某些按钮启用 例:gridId(Grid ID) btnEditId(编辑按钮ID) btnDeleteId(删除按钮ID) JS: var setButtonStatus = ...
- PV,UV,IP
参加了DTCC归来之后,各大电商技术大牛都会自豪的分享一下自己公司网站的PV,流量等等.当时也是一知半解,回来之后赶紧查了查,也算是扫扫盲. 以下摘自网络中,自己稍稍做了整理,对于PV,流量和带宽的理 ...
- nyoj开心的小明
这个问题是01背包,而对于编程之美那道是完全背包问题,在编程之美中也有一个0,1背包问题. 而且是容量是小于等于,不是等于,对于是否等于,在初始化参数时候不一样,不小于全部初始化为0,恰好等于,初始化 ...
- Java笔记(十四)……抽象类与接口
抽象类概念 抽象定义: 抽象就是从多个事物中将共性的,本质的内容抽取出来. 例如:狼和狗共性都是犬科,犬科就是抽象出来的概念. 抽象类: Java中可以定义没有方法体的方法,该方法的具体实现由子类完成 ...
- Bzoj 1562: [NOI2009]变换序列 匈牙利算法,二分图匹配
题目: http://cojs.tk/cogs/problem/problem.php?pid=409 409. [NOI2009]变换序列 ★★☆ 输入文件:transform.in 输出文 ...