#!/bin/sh
USAGE="Usage: vibergrep <contact> [<grep options>...] <pattern>"
VIBER_PATH="$HOME/.ViberPC"
test "$#" -lt 2 && { echo "$USAGE" 1>&2 ; exit 1 ; }
contact="$1"
shift
for i in "$VIBER_PATH"/*
do
case "${i##$VIBER_PATH/}" in
[0-9]*)
test -r "$i"/viber.db && { viber_db="$i"/viber.db ; break ; }
;;
esac
done
test -z "$viber_db" && { echo "Error: cannot find or access viber.db" 1>&2 ; exit 1 ; }
sqlite3 -separator ' ' "$viber_db" "
SELECT datetime(TimeStamp, 'unixepoch', 'localtime'),
CASE Direction
WHEN '0' THEN '<$contact>'
WHEN '1' THEN '<$USER>'
END,
Body
FROM Events
INNER JOIN Messages ON Events.EventID = Messages.EventID
WHERE Events.Number = (
SELECT Number
FROM ContactRelation
WHERE ContactID = (
SELECT Contact.ContactID
FROM Contact
WHERE FirstName = '$contact'))
ORDER BY TimeStamp" |grep "$@"
- sz blogja
- A hozzászóláshoz be kell jelentkezni
- 708 megtekintés
Hozzászólások
Tuti müxik? Nálam nincs kimenet. Grepet kivéve, és direktbe kimásolt és kézzel beilletszett FirstName-el sem.
BTW, nagy segítség, de első sor typo-s.
- A hozzászóláshoz be kell jelentkezni
"Tuti müxik? Nálam nincs kimenet. Grepet kivéve, és direktbe kimásolt és kézzel beilletszett FirstName-el sem."
WorksForMe™ :)
Már a legbelső SELECT (
sqlite3 /home/Mercoory/.ViberPC/0123456789/viber.db "SELECT Contact.ContactID FROM Contact WHERE FirstName = '<valaki>'"
) se ír ki semmit? (Egy intet kellene neki)
"első sor typo-s."
Eh, copy-paste-nél lemaradt a shebang, kézzel meg nem sikerült maradéktalanul begépelni, kínos.
Javítva, köszi.
- A hozzászóláshoz be kell jelentkezni
De úgy, meg is kapom az intet... lehet, hogy a db-mmel van valami gond.
Igazából szeretném kigeneráltatni, hogy az összes X kontaktal folytatott beszélgetést dobja ki egy fájlba dátummal, valamint, hogy látszódjon, ki írta a szöveget...
- A hozzászóláshoz be kell jelentkezni