linux-2:用户目录下的配置文件

        在Ubuntu服务器的用户目录下,有以下几个文件:

  1. .bash_history
  2. .bash_logout
  3. .bashrc
  4. .profile

        “.”开头的文件都是隐藏文件。Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的图形界面 Shell。

        Linux 的 Shell 种类众多,常见的有:

  • Bourne Shell(/usr/bin/sh或/bin/sh)

  • Bourne Again Shell(/bin/bash)

  • C Shell(/usr/bin/csh)

  • K Shell(/usr/bin/ksh)

  • Shell for Root(/sbin/sh)

        Bash( Bourne Again Shell) 是一个可执行从标准输入或者文件中读取的命令的一种兼容sh命令语言解释器。Bash集成了来自K Shell和C Shell的实用功能。Bash是与Shell和IEEE POSIX规范一致的一种实现。Bash是POSIX的默认配置。Bash 也是大多数Linux 系统默认的 Shell。

通过以下命令查看文档

1
man bash

1. ~/.bashrc

1
The individual per-interactive-shell startup file   # 个人交互式shell的启动文件。

这个文件类似于windows系统的环境变量的设置,如命令别名、路径等。例如:

1
2
3
4
5
PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin"
LANG=zh_CN.GBK
export PATH LANG
alias rm='rm -i'
alias ls='/bin/ls -F --color=tty --show-control-chars'

​ 例子中定义了路径,语言,命令别名(使用rm删除命令时总是加上-i参数需要用户确认,使用ls命令列出文件列表时加上颜色显示)。每次修改.bashrc后,使用source ~/.bashrc(或者 . ~/.bashrc)就可以立刻加载修改后的设置,使之生效。一般会在.bash_profile文件中显式调用.bashrc。登陆linux启动bash时首先会去读取~/.bash_profile文件,这样~/.bashrc也就得到执行了,你的个性化设置也就生效了。

2.~/.profile

同样是配置文件。如果~/.bash_profile 或者 ~/.bash_login存在,这个文件不会被bash读取。

3.~/bash_logout

当login Shell 存在的时候会被执行。当离开控制台的时候,清除屏幕以增加隐私性。

4.~/bash_history

记录命令的历史记录。

在根目录下也有一个bashrc,/etc/bashrc:为每一个运行bash shell的用户执行此文件。当bash shell被打开时,该文件被读取。~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该
该文件被读取。而在系统加载的过程中,通过/etc/init调用/etc/inittab,调用/etc/rc.d/rc.sysinit和/etc/rc.d/init.d/functions,然后启动和检查系统功能和服务。在启动bash时,分别再调用/etc/profile和/etc/bashrc,而对于每个用户,在打开shell时使用HOME/.bashrc和​HOME/.bash_profile设定专用于自己使用的shell信息。普通用户只能更改用户目录下的配置文件,跟目录下的配置文件只有可读的权限。

登陆时执行文件的顺序是:

  1. /etc/profile
  2. user home directory /.bash_profile
  3. user home directory /.bash_login
  4. user home directory /.profile

参考:

http://blog.csdn.net/yeqishi/article/details/5652870

http://blog.csdn.net/decisiveness/article/details/51967721

http://www.runoob.com/linux/linux-shell.html

本文标题:linux-2:用户目录下的配置文件

文章作者:goingcoder

发布时间:2018年01月22日 - 21:01

最后更新:2018年01月22日 - 21:01

原始链接:https://goingcoder.github.io/2018/01/22/linux2/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

-------------本文结束感谢您的阅读-------------