view scripts/duplicates.sh @ 112:3951f6d27219

Add various useful scripts. Refactor out SQL-statements.
author Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
date Tue, 03 May 2016 02:20:07 +0200
parents bae09ef524cb
children
line wrap: on
line source

#!/bin/bash

STRIP=false

BASEDIR=$(dirname $0)

while getopts 's' val
do
  case $val in
    s) STRIP=true ;;
    ?) exit 1;
  esac
done
let nopts=OPTIND-1
shift ${nopts}


PREFIX=$1

if [[ ${PREFIX} != /* ]]
then
    PREFIX=$(canonicalize ${PREFIX})
fi
if [[ ${PREFIX} == *\. ]]
then
    PREFIX=${PREFIX::-1}
fi

if [ -n "$PREFIX" ]
then
  SEDPREFIX=$(echo $PREFIX | sed -e 's/\//\\\//g')
  SQLPREFIX=$(echo $PREFIX | sed -e "s/'/''/g")

  PREFIX="WHERE path LIKE '${SQLPREFIX}%'"
fi

. ${BASEDIR}/STATEMENTS

if ${STRIP}
then
  sqlite3 ~/.DeDupe.sqlite "${SELECT_STATEMENT}" | sed "s/|${SEDPREFIX}/|/"
else
  sqlite3 ~/.DeDupe.sqlite "${SELECT_STATEMENT}"
fi