install.sh
上传用户:xu_441
上传日期:2007-01-04
资源大小:1640k
文件大小:2k
源码类别:

Email客户端

开发平台:

Unix_Linux

  1. #!/bin/sh
  2. # Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers.
  3. # All rights reserved.
  4. #
  5. # By using this file, you agree to the terms and conditions set
  6. # forth in the LICENSE file which can be found at the top level of
  7. # the sendmail distribution.
  8. #
  9. #
  10. # $Id: install.sh,v 8.13 1999/02/22 21:34:38 gshapiro Exp $
  11. # Set default program
  12. program=mv
  13. owner=""
  14. group=""
  15. mode=""
  16. strip=""
  17. # chown program -- ultrix keeps it in /etc/chown and /usr/etc/chown
  18. if [ -f /etc/chown ]
  19. then
  20. chown=/etc/chown
  21. elif [ -f /usr/etc/chown ]
  22. then
  23. chown=/usr/etc/chown
  24. else
  25. chown=chown
  26. fi
  27. # Check arguments
  28. while [ ! -z "$1" ]
  29. do
  30. case $1
  31. in
  32.   -o) owner=$2
  33. shift; shift
  34. ;;
  35.   -g) group=$2
  36. shift; shift
  37. ;;
  38.   -m) mode=$2
  39. shift; shift
  40. ;;
  41.   -c) program=cp
  42. shift
  43. ;;
  44.   -s) strip="strip"
  45. shift
  46. ;;
  47.   -*) echo $0: Unknown option $1
  48. exit 1
  49. ;;
  50.   *) break
  51. ;;
  52. esac
  53. done
  54. # Check source file
  55. if [ -z "$1" ]
  56. then
  57. echo "Source file required" >&2
  58. exit 1
  59. elif [ -f $1 -o $1 = /dev/null ]
  60. then
  61. src=$1
  62. else
  63. echo "Source file must be a regular file or /dev/null" >&2
  64. exit 1
  65. fi
  66. # Check destination
  67. if [ -z "$2" ]
  68. then
  69. echo "Destination required" >&2
  70. exit 1
  71. elif [ -d $2 ]
  72. then
  73. dst=$2/$src
  74. else
  75. dst=$2
  76. fi
  77. # Do install operation
  78. $program $src $dst
  79. if [ $? != 0 ]
  80. then
  81. exit 1
  82. fi
  83. # Strip if requested
  84. if [ ! -z "$strip" ]
  85. then
  86. $strip $dst
  87. fi
  88. # Change owner if requested
  89. if [ ! -z "$owner" ]
  90. then
  91. $chown $owner $dst
  92. if [ $? != 0 ]
  93. then
  94. exit 1
  95. fi
  96. fi
  97. # Change group if requested
  98. if [ ! -z "$group" ]
  99. then
  100. chgrp $group $dst
  101. if [ $? != 0 ]
  102. then
  103. exit 1
  104. fi
  105. fi
  106. # Change mode if requested
  107. if [ ! -z "$mode" ]
  108. then
  109. chmod $mode $dst
  110. if [ $? != 0 ]
  111. then
  112. exit 1
  113. fi
  114. fi
  115. exit 0