解析一个Unix操作系统环境变量

系统 其他OS
Unix操作系统环境变量可以作用于用户的整个工作环境。在Unix操作系统中,我们就来介绍下Unix操作系统提示符的作用。

Unix操作系统中,环境变量可以作用于用户的整个工作环境。同时相关的应用程序也需要利用这些环境变量来获取进程运行的环境变量。今天,我们就来学习下Unix操作系统提示符的作用。

Unix操作系统提示符的作用

DOS下的提示符是比较直观的。先是盘符,然后是当前的绝对路径,然后以>符号结尾。但是在Unix系统中却不是如此。在Unix系统下,其路径不是决定路径,而只是显示当前目录的名称。这就给平时的维护造成了一定的困难。那么在Unix系统下能否按DOS下的提示符格式来显示呢?即显示当前的绝对路径。要实现这个功能,就需要从Unix的提示符说起了。

提示符信息也是Unix操作系统中的环境变量。在shell环境中有两个提示符,分别为PS1与PS2。其中PS1为主提示字符串,即大家平常所看到的那个提示符(可能是一个美元符号$或者一个#字号)。通常情况下,如果当前用户是特权用户,则其主提示符可能为#;如果当前用户为普通用户,则其主提示符就为$符号。另外在shell进程中,还可以运行多条命令。此时系统会显示>提示符,这个提示符就是次级提示符,保存在PS2环境变量中。那么如何通过这个提示符来实现如上的需求呢?且听笔者慢慢道来。

1、首先需要显示的就是不管是主提示符还是次级提示符,都以>结束。此时系统工程师可以通过改变主提示符的值来实现。如可以通过$PS1=”>”命令来实现。这个命令的作用就是改变这个环境变量的值。另外有些人可能还喜欢在前面加入c:盘符,此时就可以把主提示符PS1的值设置为”c:>”。不过需要注意的是,Unix的文件系统跟微软的文件系统不一样。在Unix操作系统中,其只有一个跟目录,即一个树状结构;而在Windows操作系统中,每个分区都有一个根目录,都有一个独立的树状结构。故在Unix操作系统中没有C、D、E盘的区分。

2、其次是要实现在提示符中显示绝对路径。此时需要PWD环境变量的帮助。在Linux系统中,pwd命令可以用来显示当前的绝对路径。不过在Unix操作系统中的BASH中(shell的一种),专门提供了一个PWD环境变量。这个环境变量主要用来存储当前光标所在的绝对路径。PWD是一个动态的环境变量。当用户每次切换目录时,这个环境变量都将被重新赋值。如果要在提示符中显示当前的绝对路径,那么只需要把这个变量赋于给主提示符PS1即可。由于PWD变量动态改变的特性,此时主提示符也会随着PWD环境变量(绝对路径)的改变而改变。具体的赋值命令为:$PS1=’ $PWD’。

这里笔者要强调一个小细节。当把一个环境变量赋值给另外一个环境变量时,则需要加入$符号。否则的话,Unix操作系统会把这个变量当作一个普通的字符串来对待。笔者在给学员进行培训时,这是他们经常犯的错误。这注意是因为他们可能受到以前经验的影响。因为在一些开发环境中编程的时候,在把某个变量的值赋值给其他变量时,不需要在变量前加入$等类似的特殊符号。但是这里需要注意,在Unix操作系统中如果把某个环境变量的值赋值给另外一个环境变量,必须要用$符号来标示,否则的话系统会

提示符除了可以模拟实现DOS提示符显示格式之外,还有其他一些重要的作用。如大部分系统工程师在管理Unix服务器的时候,不会直接通过Unix终端控制台来进行。而是利用ssh等远程连接协议进行远程登陆,进行远程维护。

如果企业中Unix服务器比较多的话,系统工程师就可能会比较麻烦。因为在默认情况下,利用ssh协议远程登陆到Unix操作系统,在终端上不会显示Unix主机的名字。为此如果系统工程师在同一时刻连接了多台Unix服务器的话,则其就不能够一目了然的知道到底是哪台Unix服务器。在这种情况下,系统工程师就希望在提示符中能够显示Unix主机的名字。在bash环境中,有一个转义字符可以实现类似的需求。

\h这个转义字符就是用来显示当前主机的名字。为此如果系统工程师需要提示符中显示主机的名字,则可以通过如下的命令来实现,$PS1=”\h”。如此设置后,在Unix操作系统提示符中就会显示当前主机的名字。这方面在Linux系统上就做的比较好,其默认情况下就会显示主机的名字。

在这里,我们就举出一个Unix操作系统环境变量在实际工作中对于用户的价值。其实在日常工作中,这些环境变量的价值往往被人所忽视。

【编辑推荐】

  1. 查看Unix操作系统内存占用
  2. 让DOS与Unix文件相互兼容
  3. Unix操作系统与Dos文件差异所在
  4. Unix操作系统管理客户端
  5. Unix操作系统多个主机的表示方法
责任编辑:小霞
相关推荐

2010-04-20 15:05:47

Unix操作系统

2010-04-20 16:09:18

Unix操作系统

2010-04-08 10:42:28

Unix操作系统

2010-04-30 01:35:46

Unix系统

2010-04-21 16:58:51

Unix环境变量

2010-04-15 10:53:20

2010-04-09 09:11:20

Unix操作系统

2010-04-14 15:32:18

Unix操作系统

2010-04-08 16:05:49

Unix操作系统

2010-04-07 16:15:04

Unix操作系统

2010-04-19 13:47:20

Unix操作系统

2010-01-06 15:18:19

Linux操作系统

2010-04-19 13:54:43

Unix操作系统

2010-04-20 10:00:58

Unix操作系统

2020-10-25 08:52:19

Unix操作系统TrueOS

2010-04-09 11:32:07

Unix操作系统

2010-04-07 10:15:04

Unix操作系统

2010-04-07 15:59:29

Unix操作系统

2010-04-16 15:09:54

2010-04-19 15:11:25

Unix操作系统
点赞
收藏

51CTO技术栈公众号