Chinaunix首页 | 论坛 | 博客
  • 博客访问: 739618
  • 博文数量: 180
  • 博客积分: 4447
  • 博客等级: 上校
  • 技术积分: 1582
  • 用 户 组: 普通用户
  • 注册时间: 2006-04-03 14:51
文章分类

全部博文(180)

文章存档

2014年(6)

2013年(8)

2011年(125)

2009年(35)

2008年(1)

2007年(5)

分类: LINUX

2011-01-04 15:53:57

CDPATH 最近在看一本关于SHELL脚本的书,突然发现了CDPATH环境变量的使用,对日常维护很有作用。下面举例描述一下

如果你是一个DBA,经常查看数据库警告日志是必须的,以前我都用
  1. oracle@CESTOS5 ~> cd /oracle/admin/test16/bdump/
  2. oracle@CESTOS5 /oracle/admin/test16/bdump> tail -50 alert_test16.log
有了CDPATH,你可以事先在.bash_profile中设置
export CDPATH=/oracle/admin/test16
  1. oracle@CESTOS5 ~> export CDPATH=/oracle/admin/test16/
  2. oracle@CESTOS5 ~> cd bdump
  3. /oracle/admin/test16/bdump
  4. oracle@CESTOS5 /oracle/admin/test16/bdump> tail -50 alert_test16.log
然后直接tail 就OK了.当输入cd bdump,系统就会进入$CDPATH/bdump
目录。上面的例子已经说明了这一点。

  但是特殊情况如果当前目录也有bdump子目录,那系统会如何呢?实践是检验真理的唯一标准,我们来测试一下。

  1. 1.在当前目录下建立bdump子目录
  2. oracle@CESTOS5 ~> mkdir bdump
  3. 2.进入bdump目录
  4. oracle@CESTOS5 ~> cd bdump/
  5. /oracle/admin/test16/bdump
  6. oracle@CESTOS5 /oracle/admin/test16/bdump>
我们可以看到进入了CDPATH的bdump,所以说CDPATH是优先的.如果要进入我们刚刚的bdump目录怎么办呢?可以用
  1. oracle@CESTOS5 ~> cd ./bdump/
  2. oracle@CESTOS5 ~/bdump>
我们再来做个实验,如果在当前新建一个test目录,而CDPATH下面没有的,会如何呢?
  1. oracle@CESTOS5 ~/bdump> mkdir test
  2. oracle@CESTOS5 ~/bdump> cd test/
  3. oracle@CESTOS5 ~/bdump/test>
结果很明显了,我就不做总结了。

阅读(1271) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~