魯姆普爾史蒂爾特金》是最著名的德國童話之一。格林兄弟,雅各和威廉,於1812年首次將這個故事(德語: Rumpelstilzchen )收錄在他們的童話集《兒童與家庭故事集》中。他們並非這個故事的原創者。他們記錄的是一個更古老的歐洲民間故事,這個故事已經口耳相傳了好幾代。民俗學家將其歸類為ATU 500型故事,即「幫手的名字」故事。這種故事模式在歐洲各地的故事中都很常見,講述的是一個神奇的幫手,只有找到他的秘密名字才能打敗他。格林兄弟在不同的版本中對故事進行了修改,因此結局有所不同:在一些後來的德語版本中,小矮人魯姆普爾斯蒂爾特金憤怒地將自己撕成兩半;而在這部經典的英文譯本中,他跺腳踩穿地板,然後怒氣沖沖地離開了。🌌 SpectraShell

🌌 SpectraShell

Current path: usr/bin/



⬆️ Go up: /usr

📄 Viewing: prezip

#!/usr/bin/sh

# Copyright (c) 2004
# Kevin Atkinson
#
# Permission to use, copy, modify, distribute and sell this software
# and its documentation for any purpose is hereby granted without
# fee, provided that the above copyright notice appear in all copies  
# and that both that copyright notice and this permission notice 
# appear in supporting documentation.  Kevin Atkinson makes no
# representations about the suitability of this software for any
# purpose.  It is provided "as is" without express or implied
# warranty.

cmd=`basename "$0"`

warn () 
{
  if test -z "$quiet"; then echo "$cmd: $1" >&2 ; fi
}

error () 
{
  echo "$cmd: $1" >&2
  errors=t
}

zip2 ()
{
  case $1 in
  d) 
    prezip-bin -d "$cmd: $2"
    ;;
  z)
    if test "$sort"
    then
      LC_COLLATE=C sort -u | prezip-bin -z "$cmd: $2"
    else
      prezip-bin -z "$cmd: $2"
    fi
    ;;
  esac
  if test $? -eq 0
  then
    return 0
  else
    errors=t
    return 1
  fi
}

zip ()
{
  if test -e "$3" -a ! "$force"
  then
    error "Output file $3 already exists."
    return 1
  fi
  zip2 $1 "$2: " < "$2" > "$3"
  if test $? -eq 0
  then
    if test -z "$keep"; then rm "$2"; fi
    return 0
  else
    rm "$3"
    return 1
  fi
}

case $cmd in
prezip)   mode=z ;;
preunzip) mode=d ;; 
precat)   mode=d; stdout=t ;;
*)        mode=h ;;
esac

num=0
for p
do
  case $p in
  --*)
    parm=`expr "x$p" : '...\(.*\)'`
    case $parm in
    decompress ) mode=d ;;
    compress   ) mode=z ;;
    keep       ) keep=t ;;
    force      ) force=t ;;
    stdout     ) stdout=t ;;
    sort       ) sort=t ;;
    nocwl      ) nocwl=t ;;
    license    ) mode=L ;;
    version    ) mode=V ;;
    help       ) mode=h ;;
    quiet      ) quiet=t ;;
    *          ) error "invalid option -- $parm";;
    esac
    ;;
  -* ) 
    p=`expr "x$p" : '..\(.*\)'`
    while test "$p"
    do
      parm=`expr "$p" : '\(.\)'`
      p=`expr "$p" : '.\(.*\)'`
      case $parm in
      d ) mode=d ;;
      z ) mode=z ;;
      k ) keep=t ;;
      f ) force=t ;;
      c ) stdout=t ;;
      s ) sort=t ;;
      S ) nocwl=t ;;
      L ) mode=L ;;
      V ) mode=V ;;
      h ) mode=h ;;
      q ) quiet=t ;;
      * ) error "invalid option -- $parm";;
      esac
    done
    ;;
  * )
    num=`expr $num + 1`
    ;;
  esac
done

if test "$errors" 
then
  mode=h
fi

case $mode in
h ) 
  prezip-bin -V
  cat <<EOF

  usage $0 [-dzhLV] [-cfksSq] [file ...]

   -h --help        display help
   -d --decompress  force decompression
   -z --compress    force compression
   -L --license     display software license
   -V --version     display version

   -c --stdout      decompress to standard output
   -f --force       force
   -k --keep        keep input files
   -s --sort        sort and remove duplicates before compressing
   -S --nocwl       do not rename .wl suffix to .cwl (use .wl.pz instead)
   -q --quiet       suppress all warnings

  If invoked as "prezip" the default action is to compress.
             as "preunzip" the default action is to decompress.
             as "precat" the default action is to decompress to stdout.

  If no file names are given then prezip will compress or decompress
  from the standard input to the standard output.  Short flags can be
  combined so that "-c -s" is the same as "-cs".

  Prezip is _not_ a general purpose compressor.  It should only be
  used on sorted word lists or other similar text files.  It will
  likely _increase_ the size of binary data.

EOF
  ;;
L )
  prezip-bin -V
  cat <<EOF

  Copyright (c) 2004
  Kevin Atkinson

  Permission to use, copy, modify, distribute and sell this software
  and its documentation for any purpose is hereby granted without
  fee, provided that the above copyright notice appear in all copies  
  and that both that copyright notice and this permission notice 
  appear in supporting documentation.  Kevin Atkinson makes no
  representations about the suitability of this software for any
  purpose.  It is provided "as is" without express or implied
  warranty.

EOF
  ;;
V ) 
  prezip-bin -V
  ;;
d | z )
if test $num -gt 0
then
  for f
  do
    case $f in
    -* ) ;;
    * )
      if test \( -f "$f" -a ! -L "$f" \) \
              -o \( \( "$stdout" -o "$force" \) -a -L "$f" \)
      then
        if test "$stdout"
        then
          zip2 $mode "$f: " < "$f"
        else
          case $mode in
          d )
            dir=`dirname "$f"`
            file=`basename "$f"`
            base=`basename "$f" .pz`
            base2=`basename "$f" .cwl`
            if test "$file" != "$base"
            then
              out="$dir/$base"
              zip d "$f" "$out"
            elif test "$file" != "$base2"
            then
              out="$dir/$base2.wl"
              zip d "$f" "$out"
            elif test "$force"
            then 
              out="$f.out"
              warn "can't guess original name - using \"$out\""
              zip d "$f" "$out"
            else
              warn "$f does not end in .pz or .cwl - ignored"
            fi
            ;;
          z )
            dir=`dirname "$f"`
            file=`basename "$f"`
            base=`basename "$f" .wl`
            if test "$nocwl" -o "$file" = "$base"
            then
              zip z "$f" "$f.pz"
            else
              zip z "$f" "$dir/$base.cwl"
            fi
            ;;
          esac
        fi
      elif test -e "$f"
      then
        warn "$f is not a regular file - ignored"
      else
        error "$f: No such file"
      fi
      ;;
    esac
  done
else
  case $mode in
  d ) zip2 d ;;
  z ) zip2 z ;;
  esac
fi
;;
esac

if test "$errors" 
then
  exit 1
else
  exit 0
fi


📁

🐉🐉Сударыня, ..( _ _)ノ|壁это н🐉🐉 Secure Access
◈

Secure Terminal

Authentication Required