mkdir-sh
上传用户:xiejiait
上传日期:2007-01-06
资源大小:881k
文件大小:1k
源码类别:

SCSI/ASPI

开发平台:

MultiPlatform

  1. #!/bin/sh
  2. #
  3. # Replacement for mkdir -p ... functionality.
  4. #
  5. # BSD-4.3, NeXT Step <= 3.x and similar don't accept the -p flag
  6. #
  7. # @(#)mkdir-sh 1.2 98/12/14 Copyright 1998 J. Schilling
  8. #
  9. # This program is free software; you can redistribute it and/or modify
  10. # it under the terms of the GNU General Public License as published by
  11. # the Free Software Foundation; either version 2, or (at your option)
  12. # any later version.
  13. #
  14. # This program is distributed in the hope that it will be useful,
  15. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  17. # GNU General Public License for more details.
  18. #
  19. # You should have received a copy of the GNU General Public License
  20. # along with this program; see the file COPYING.  If not, write to
  21. # the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  22. if [ $# -lt 1 ]; then
  23. echo "Usage: mkdir-sh [-p] dir ...."
  24. exit 1
  25. fi
  26. dop=false
  27. case $1 in
  28. -p)
  29. dop=true
  30. shift
  31. ;;
  32. esac
  33. if [ $dop = false ]; then
  34. for i in "$@"; do
  35. mkdir "$i"
  36. done
  37. else
  38. for i in "$@"; do
  39. if [ -d "$i" ]; then
  40. continue
  41. fi
  42. # Don't use ${i:-.}, BSD4.3 doen't like it
  43. #
  44. fullname="$i"
  45. if [ ."$i" = . ]; then
  46. fullname=.
  47. fi
  48. dirname=`expr 
  49. "$fullname/" : '(/)/*[^/]*//*$'  | 
  50. "$fullname/" : '(.*[^/])//*[^/][^/]*//*$' | 
  51. .`
  52. sh $0 -p "$dirname"
  53. mkdir "$i"
  54. done
  55. fi