在linux 中,如何获取已存在的目录呢?
比如 在linux 系统中,目录/tmp 存在,但是目录 /tmp/linuxidc 不存在。我要写一个函数,参数是 /tmp/linuxidc ,输出是 /tmp,若目录/tmp/linuxidc 存在,则输出是/tmp/linuxidc
- # Get father directory
- fadir()
- {
- local this_dir=`pwd`
- local child_dir=“$1”
- dirname “$child_dir”
- cd $this_dir
- }
- exist_dir()
- {
- local child_dir=“$1”
- while test ! -d “$child_dir”
- do
- child_dir=`fadir “$child_dir”`
- done
- echo $child_dir
- }
测试如下:
tmp_dir=`exist_dir “/tmp/linuxidc”`
echo $tmp_dir
若目录 /tmp/linuxidc 存在,则输出应该是/tmp/linuxidc:
若目录 /tmp/linuxidc 不存在,则输出应该是 /tmp