]> git.ipfire.org Git - thirdparty/bash.git/blame - examples/scripts.v2/uudec
Bash-4.2 patch 45
[thirdparty/bash.git] / examples / scripts.v2 / uudec
CommitLineData
ccc6cda3
JA
1:
2# @(#) uudec.sh 1.0 93/11/22
3# 92/08/04 john@armory.com (John H. DuBois III)
4# 93/11/22 Added help.
5
6isfalse()
7{
8 test 0 -eq "$1"
9}
10
11phelp()
12{
13"$name: process uuencoded files.
14Usage: uudec [-h] filename ...
15Options:
16-h: Print this help."
17}
18
19name=${0##*/}
20
21typeset -i force=0
22
23while getopts "hf" opt; do
24 case "$opt" in
25 h) phelp; exit 0;;
26 f) force=1;;
27 *) echo "$Usage" 1>&2; exit 2;;
28 esac
29done
30
31shift $((OPTIND - 1))
32
33for file; do
34 echo "$file"
35 while read b mode filename && [ "$b" != begin ]; do :; done < "$file"
36 if [ "$b" = begin ]; then
37 if [ -f "$filename" ] && isfalse $force; then
38 echo "Output file \"$filename\" exists. Not written."
39 else
40 uudecode "$file"
41 fi
42 else
43 echo "No begin line."
44 fi
45done