实用版  |  综合版   推荐信息:CSS系列 | 网站排名 | 网页特效平面设计 | 硬件故障维修
内容

solaris下shell配置文件及设置

出处:互联网   2008-04-13   浏览:    编辑:53vi.com
字体大小: | |


  三、常用变量设定

  在UNIX环境中的变量可分为两类,一是环境变量(Enviroment Variable)、一是shell变量(Shell Variable),二者之间的不同处在於:环境变量不会因为shell间的更替而失去这个变量的作用,如PATH是一个环境变量,因此,即使您在设定好 PATH之後再执行另一个shell(如原来是用sh、而後在sh环境中再执行csh),PATH这个环境变量仍能继续作用,而shell变量(如csh 的cwd)则是只有在特定的shell下才有作用,一执行其他shell就失去作用。

  在sh及csh二系列各有其不同的设定变量的方式,为:

  1. Bourne Shell系列
  [VAR]=[STRING or NUMBER]
  export [VAR]

  如果当我们离开shell、进入另一个程式(如tin)之後,仍需要使用这个变量,则除了设定这个变量的值外,还需要以'export'指令加以宣告,如设定萤幕型态的变量TERM就需以'export'来宣告。

  2. C Shell系列
  set [var] = [STRING or NUMBER]
  setenv [var] [STRING or NUMBER]

  其中'set'是单纯设定变量值,'setenv'则除了设定变量值外,还包含了类似sh中'export'的功能。

  而无论是Bourne Shell或C Shell,它们都有一些基本的、共同的常用变量,如:

  1. PATH

  设定可执行文件的寻找路径,若现行目录也要包含在寻找的路径中,则需在设定路径时给予一'.',表示现行目录亦包含在寻找的路径中,如:

  PATH=.:/bin:/usr/local/bin:/usr/ucb
  或
  set path=(. /bin /usr/local/bin /usr/ucb)

  2. EDITOR

  设定想要使用的编辑器,如
  EDITOR=/usr/ucb/vi
  或
  setenv EDITOR /usr/ucb/vi

  3. HOME

  设定个人帐号home directory的所在位置,通常在login时即叁考/etc/passwd而给予一设定值,因此除非用户有某些特殊需求,通常不会重新设定。

  4. SHELL

  同样是在login时即会叁考/etc/passwd的内容而自动设定,用户即使重新设定这个变量的内容,对帐号的使用也不会有任何影响。

  5. 提示符号的设定

  在sh 中:
  PS1="[STRING]"
  PS2="[STRING]"
  在csh中: set prompt="[STRING]"

  当然以上所列的只是使用得较为广泛的变量,若您觉得这些不够用,可用man sh、man csh、man tcsh、man bash指令查阅各shell的说明,在其中您将可看到各个shell所包含的变量及各变量的用法。

  若不清楚某一变量的设定内容,可用'echo $[VAR]'来观察变量的内容,如:
  echo $PATH

  四、SHELL 环境的异动

  前面所提到start files中的设定将在用户login时执行,但当我们要在线上直接改变所使用的shell(如直接执行'csh'或'exec csh',此时不会执行start files)或是要改变设定的内容,在编修了start files或script files之後,可利用下列指令将环境更新,而不必重新login:

  . [script file] (在sh 系列的shell中)
  source [script files] (在csh系列的shell中)

  直接执行一个script file与用'.'、'source'指令执行各有其不同的效果,我们可建立一内容为 cd / (或cd [DIR]) 的script file来观察它们之间的差异:

  因script file的执行环境是一内定或自定的subshell(可在script file的第一行用类似'#!/bin/csh'指令加以设定),所以它的直接执行并无法真正将shell环境的工作目录切换到/,而script file一结束,subshell即不存在、'cd /'指令的效果也告消失;而用'.'或'source'执行则是真正将shell的工作环境下的工作目录更换到/,不会因为script file的结束而使文件中指令的效果消失。
共2页: 上一页 [1] 2 下一页
RSS               
发表评论请自觉遵守互联网相关政策法规
匿名
频道最新更新
评论热门
阅读排行
编辑推荐
TMG

Copyright © 53vi.com, All Rights Reserved 资讯先锋网 版权所有

网站事务、投稿热线:815307530@qq.com