代码:
[root@localhost ~]# cat mkdir_recursive.sh #!/bin/sh mkdir_recursive() { if [ -z $1 -o $1 = "/" ]; then return fi parent_dir=`dirname $1` mkdir_recursive $parent_dir if [ ! -d $1 ]; then echo "mkdir $1" mkdir $1 || exit -1 fi } mkdir_recursive $1 [root@localhost ~]#
执行结果:
[root@localhost ~]# ls /tmp/a ls: /tmp/a: 没有那个文件或目录 [root@localhost ~]# ./mkdir_recursive.sh /tmp/a/b/c/d/e mkdir /tmp/a mkdir /tmp/a/b mkdir /tmp/a/b/c mkdir /tmp/a/b/c/d mkdir /tmp/a/b/c/d/e [root@localhost ~]# ls /tmp/a/b/c/d e [root@localhost ~]#