本小节的内容分为两个层次,系统层次和用户层次。/etc/开头是系统层次,~/开头是用户层次。关于系统的文件 /etc/profile 和 /etc/bashrc ,这两个文件我们不要去动。当我们有一些需求要编辑这些文件的时候,可以编辑该用户下的家目录。 举个例子,输入命令 vim .bash_profile ,回车,见下图, 这里面做的更改,仅对该用户有效,要是打算全局生效的话,需要到 /etc/profile 里面去做更改。输入 :q ,回车,即可退出。注意上图中“. ~/.bashrc”前面的这个×××的点,这个点和之前介绍过的 source 命令是同一个意思,加载的意思。我们输入命令 vim .bash_profile 的时候,会自动调用 ~/.bashrc ,那我们试着输入命令 vim .bashrc ,回车,见下图, 发现该命令自动调用了 /etc/bashrc ,输入 :q ,回车,退出。每个用户家目录下都有以 . 开头的隐藏文件。

/etc/profile :这个文件预设了几个重要的变量,例如PATH, USER, LOGNAME, MAIL, INPUTRC, HOSTNAME, HISTSIZE, umask等等。 /etc/bashrc :这个文件主要预设umask以及PS1。这个PS1就是我们在敲命令时,前面那串字符了。 除了两个系统级别的配置文件外,每个用户的主目录下还有几个这样的隐藏文件: .bash_profile :定义了用户的个人化路径与环境变量的文件名称。每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次。 .bashrc :该文件包含专用于你的shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。例如你可以将用户自定义的alias或者自定义变量写到这个文件中。 .bash_history :记录命令历史用的。 .bash_logout :当退出shell时,会执行该文件。可以把一些清理的工作放到这个文件中。

接着讲一下 PS1 ,它是在 /etc/bashrc 里面定义的,输入命令 vim /etc/bashrc ,回车,进入下图, 搜索 PS1 ,回车,见下图, 可以看到 PS1 。 接着看一下命令前缀 [root@lyslinux-01 ~]# ,其中 root 就是当前登录的用户名,@ 后面的 lyslinux 就是主机名,~ 就是所在的目录最后一层级。我的linux系统PS1就是[root@lyslinux-01 ~]# , 来看一下PS1的值,输入命令 echo $PS1 ,回车,见下图, \u 就是用户, \h 主机名, \W 则是当前目录,$ 就是那个 ‘#’ 了,如果是普通用户则显示为‘$’。 上面大写的 W ,能不能改成小写的 w 呢?来试一下,见下图, 我们可以看到,把 w 改成小写之后,命令前缀中的目录就变成绝对路径了。 接着试一下去掉方括号 [ ] ,见下图, 上图中 $ 表示普通用户,# 表示 root 用户。 为了方便区分,也可以设置带颜色显示,输入命令 PS1='[\033[01;32m]\u@\h[\033[00m]:[\033[01;36m]\w[\033[00m]$' ,回车,见下图,

以上就是 PS1 ,有了 PS1 ,也有 PS2 ,是另外一种环境状态,见下图, 以上做个了解就可以。