Browse Source

* improved bin/sde-cleanup-download by adding a dry run mode (-d, --dry-run),

a usage function and a hardcoded list of other accepted files


git-svn-id: svn://svn.opensde.net/opensde/opensde/trunk@21705 10447126-35f2-4685-b0cf-6dd780d3921f
misl/sde-wrapper
Alejandro Mery 17 years ago
parent
commit
16f4588583
1 changed files with 46 additions and 3 deletions
  1. +46
    -3
      bin/sde-cleanup-download

+ 46
- 3
bin/sde-cleanup-download

@ -18,17 +18,60 @@
. $SDEROOT/lib/libsde.in
cleanup_usage() {
local progname=${0##*/}
cat <<EOT
Usage: $progname [--dry-run]
EOT
}
shortopts='d'
longopts='dry-run'
options=$( getopt -o "$shortopts" -l "$longopts" -- "$@" )
if [ $? -ne 0 ]; then
cleanup_usage
exit -1
fi
# load new arguments list
eval set -- "$options"
dryrun=
while [ $# -gt 0 ]; do
case "$1" in
--) shift; break ;;
-d|--dry-run)
dryrun=yes ;;
esac
shift
done
set -e
trap '' INT
mkdir -p "$SDEROOT/tmp"
tmpfile="$SDEROOT/tmp/down.$$"
# get list of wanted files
. $SDEROOT/bin/sde-list-download > "$tmpfile"
# get list of accepted files
cat <<EOT > "$tmpfile"
download/mirror
download/local
EOT
. $SDEROOT/bin/sde-list-download >> "$tmpfile"
# and check those I have against that list
( cd "$SDEROOT"; find download/ -type f ) | while read file; do
grep -q "^$file\$" "$tmpfile" || rm -vf -- "$file"
[ -f "$SDEROOT/$file" ] || continue
if ! grep -q "^$file\$" "$tmpfile"; then
if [ -n "$dryrun" ]; then
echo rm -vf -- "$SDEROOT/$file"
else
rm -vf -- "$SDEROOT/$file"
fi
fi
done
rm -f "$tmpfile"

Loading…
Cancel
Save