#!/usr/bin/perl
$substr = $ARGV[0]; # Часть имени сайта
$db = `find ~/.mozilla/ -iname cookies.sqlite`; # Получаем имя базы данных
chop $db;
$contents = "host, path, isSecure, expiry, name, value";
$ask = 'sqlite3 -list '.$db.' '."'".'SELECT '.$contents.
' FROM moz_cookies WHERE host LIKE "%'.$substr.'%"'."'";
@answer = `$ask`; # И вытаскиваем из него нужную инфу
for(@answer)
{
@str = split /\|/, $_;
print $str[0], "\t", ($str[0] =~ /^./ ? "TRUE" : "FALSE"),
"\t", $str[1], "\t", ($str[2] ? "TRUE" : "FALSE"),
"\t", $str[3], "\t", $str[4], "\t", $str[5], "\n";
}
И скрипт на баше:
#!/bin/sh
name=USERNAME
profile=PROFILE
for f in `sqlite3 -separator '|' -list /home/$name/.mozilla/firefox/$profile/cookies.sqlite \
"SELECT host, path, isSecure, expiry, name, value
FROM moz_cookies WHERE host LIKE '%$1%'"`
do
echo $f | sed 's/^\(\.[^|]*\)|\([^|]*\)|0|\([^|]*\)|\([^|]*\)|\(.*\)$/\1\tTRUE\t\2\tFALSE\t\3\t\4\t\5/;
s/^\(\.[^|]*\)|\([^|]*\)|[^|]*|\([^|]*\)|\([^|]*\)|\(.*\)$/\1\tTRUE\t\2\tTRUE\t\3\t\4\t\5/;
s/^\([^|]*\)|\([^|]*\)|0|\([^|]*\)|\([^|]*\)|\(.*\)$/\1\tFALSE\t\2\tFALSE\t\3\t\4\t\5/;
s/^\([^|]*\)|\([^|]*\)|[^|]*|\([^|]*\)|\([^|]*\)|\(.*\)$/\1\tFALSE\t\2\tTRUE\t\3\t\4\t\5/;'
done
Комментариев нет:
Отправить комментарий