Mercurial > dedupe
annotate scripts/duplicates.sh @ 115:404795616b1e default tip
Added a lot of common files to ignore
| author | Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no> |
|---|---|
| date | Sat, 25 Mar 2017 17:43:57 +0100 |
| parents | 3951f6d27219 |
| children |
| rev | line source |
|---|---|
|
97
34f11b2a1178
Script to extract duplicates directly to the commandline.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
1 #!/bin/bash |
|
34f11b2a1178
Script to extract duplicates directly to the commandline.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
2 |
|
112
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
3 STRIP=false |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
4 |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
5 BASEDIR=$(dirname $0) |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
6 |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
7 while getopts 's' val |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
8 do |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
9 case $val in |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
10 s) STRIP=true ;; |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
11 ?) exit 1; |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
12 esac |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
13 done |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
14 let nopts=OPTIND-1 |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
15 shift ${nopts} |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
16 |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
17 |
|
97
34f11b2a1178
Script to extract duplicates directly to the commandline.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
18 PREFIX=$1 |
|
34f11b2a1178
Script to extract duplicates directly to the commandline.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
19 |
|
112
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
20 if [[ ${PREFIX} != /* ]] |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
21 then |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
22 PREFIX=$(canonicalize ${PREFIX}) |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
23 fi |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
24 if [[ ${PREFIX} == *\. ]] |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
25 then |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
26 PREFIX=${PREFIX::-1} |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
27 fi |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
28 |
|
97
34f11b2a1178
Script to extract duplicates directly to the commandline.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
29 if [ -n "$PREFIX" ] |
|
34f11b2a1178
Script to extract duplicates directly to the commandline.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
30 then |
|
110
bae09ef524cb
Fixes escaping problem in SQL.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
103
diff
changeset
|
31 SEDPREFIX=$(echo $PREFIX | sed -e 's/\//\\\//g') |
|
bae09ef524cb
Fixes escaping problem in SQL.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
103
diff
changeset
|
32 SQLPREFIX=$(echo $PREFIX | sed -e "s/'/''/g") |
|
bae09ef524cb
Fixes escaping problem in SQL.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
103
diff
changeset
|
33 |
|
bae09ef524cb
Fixes escaping problem in SQL.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
103
diff
changeset
|
34 PREFIX="WHERE path LIKE '${SQLPREFIX}%'" |
|
97
34f11b2a1178
Script to extract duplicates directly to the commandline.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
35 fi |
|
34f11b2a1178
Script to extract duplicates directly to the commandline.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
diff
changeset
|
36 |
|
112
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
37 . ${BASEDIR}/STATEMENTS |
|
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
38 |
|
110
bae09ef524cb
Fixes escaping problem in SQL.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
103
diff
changeset
|
39 if ${STRIP} |
|
bae09ef524cb
Fixes escaping problem in SQL.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
103
diff
changeset
|
40 then |
|
112
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
41 sqlite3 ~/.DeDupe.sqlite "${SELECT_STATEMENT}" | sed "s/|${SEDPREFIX}/|/" |
|
110
bae09ef524cb
Fixes escaping problem in SQL.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
103
diff
changeset
|
42 else |
|
112
3951f6d27219
Add various useful scripts. Refactor out SQL-statements.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
110
diff
changeset
|
43 sqlite3 ~/.DeDupe.sqlite "${SELECT_STATEMENT}" |
|
110
bae09ef524cb
Fixes escaping problem in SQL.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents:
103
diff
changeset
|
44 fi |
