neobytes/contrib/tidy_datadir.sh

63 lines
1.5 KiB
Bash
Raw Normal View History

2013-02-10 20:49:39 +01:00
#!/bin/bash
# Copyright (c) 2013 The Bitcoin Core developers
# Distributed under the MIT software license, see the accompanying
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
2013-02-10 20:49:39 +01:00
if [ -d "$1" ]; then
cd "$1"
else
echo "Usage: $0 <datadir>" >&2
2016-03-06 16:26:01 +01:00
echo "Removes obsolete Dash database files" >&2
2013-02-10 20:49:39 +01:00
exit 1
fi
LEVEL=0
if [ -f wallet.dat -a -f addr.dat -a -f blkindex.dat -a -f blk0001.dat ]; then LEVEL=1; fi
if [ -f wallet.dat -a -f peers.dat -a -f blkindex.dat -a -f blk0001.dat ]; then LEVEL=2; fi
if [ -f wallet.dat -a -f peers.dat -a -f coins/CURRENT -a -f blktree/CURRENT -a -f blocks/blk00000.dat ]; then LEVEL=3; fi
if [ -f wallet.dat -a -f peers.dat -a -f chainstate/CURRENT -a -f blocks/index/CURRENT -a -f blocks/blk00000.dat ]; then LEVEL=4; fi
case $LEVEL in
0)
2016-03-06 16:26:01 +01:00
echo "Error: no Dash datadir detected."
2013-02-10 20:49:39 +01:00
exit 1
;;
1)
2016-03-06 16:26:01 +01:00
echo "Detected old Dash datadir (before 0.7)."
2013-02-10 20:49:39 +01:00
echo "Nothing to do."
exit 0
;;
2)
2016-03-06 16:26:01 +01:00
echo "Detected Dash 0.7 datadir."
2013-02-10 20:49:39 +01:00
;;
3)
2016-03-06 16:26:01 +01:00
echo "Detected Dash pre-0.8 datadir."
2013-02-10 20:49:39 +01:00
;;
4)
2016-03-06 16:26:01 +01:00
echo "Detected Dash 0.8 datadir."
2013-02-10 20:49:39 +01:00
;;
esac
FILES=""
DIRS=""
if [ $LEVEL -ge 3 ]; then FILES=$(echo $FILES blk????.dat blkindex.dat); fi
if [ $LEVEL -ge 2 ]; then FILES=$(echo $FILES addr.dat); fi
if [ $LEVEL -ge 4 ]; then DIRS=$(echo $DIRS coins blktree); fi
for FILE in $FILES; do
if [ -f $FILE ]; then
echo "Deleting: $FILE"
rm -f $FILE
fi
done
for DIR in $DIRS; do
if [ -d $DIR ]; then
echo "Deleting: $DIR/"
rm -rf $DIR
fi
done
echo "Done."