bz64wrap
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:1k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  1. #!/bin/sh
  2. # bz64wrap - the sending side of a bzip2 | base64 stream
  3. # Andreas Dilger <adilger@clusterfs.com>   Jan 2002
  4. PATH=$PATH:/usr/bin:/usr/local/bin:/usr/freeware/bin
  5. # A program to generate base64 encoding on stdout
  6. BASE64_ENCODE="uuencode -m /dev/stdout"
  7. BASE64_BEGIN=
  8. BASE64_END=
  9. BZIP=NO
  10. BASE64=NO
  11. # Test if we have the bzip program installed
  12. bzip2 -c /dev/null > /dev/null 2>&1 && BZIP=YES
  13. # Test if uuencode can handle the -m (MIME) encoding option
  14. $BASE64_ENCODE < /dev/null > /dev/null 2>&1 && BASE64=YES
  15. if [ $BASE64 = NO ]; then
  16. BASE64_ENCODE=mimencode
  17. BASE64_BEGIN="begin-base64 644 -"
  18. BASE64_END="===="
  19. $BASE64_ENCODE < /dev/null > /dev/null 2>&1 && BASE64=YES
  20. fi
  21. if [ $BZIP = NO -o $BASE64 = NO ]; then
  22. echo "$0: can't use bz64 encoding: bzip2=$BZIP, $BASE64_ENCODE=$BASE64"
  23. exit 1
  24. fi
  25. # Sadly, mimencode does not appear to have good "begin" and "end" markers
  26. # like uuencode does, and it is picky about getting the right start/end of
  27. # the base64 stream, so we handle this internally.
  28. echo "$BASE64_BEGIN"
  29. bzip2 -9 | $BASE64_ENCODE
  30. echo "$BASE64_END"