#!/usr/bin/perl # developed by k2patel # k2patel@hotmail.com # this Script Manage all Backup Record. use Switch; use DBI; $filename = 'machine.db'; unless (-e $filename) { print "Creating Database..."; $dbh = DBI->connect( "dbi:SQLite:machine.db" ) || die "Cannot connect: $DBI::errstr"; $dbh->do( "CREATE TABLE DESK ( v_ID, s_ID, Dte )" ); $dbh->disconnect; } my($num_args) = $#ARGV + 1; if ($num_args < 3) { print "\nUsage: db.pl []\n"; print "Operation : Allowed \"add / get / del\" \n"; print "All three Value require\n"; print "Snapshot ID must provided when the Operation is Add / Del\n"; exit 1; } $dbh = DBI->connect( "dbi:SQLite:machine.db" ) || die "Cannot connect: $DBI::errstr"; switch( $ARGV[0] ){ case "add" { if ($ARGV[3] eq ''){ print "You can not use ADD without Snapshot"; exit 1; }else{ $dbh->do( "INSERT INTO DESK VALUES ( '$ARGV[1]', '$ARGV[2]', '$ARGV[3]' )" ); } } case "del" { if ($ARGV[3] eq ''){ print "You can not use DEL without Snapshot"; exit 1; }else{ $dbh->do( "DELETE FROM DESK WHERE s_ID = '$ARGV[2]' AND Dte = '$ARGV[3]'" ); } } case "get" { $res = $dbh->selectall_arrayref( "SELECT s_ID, Dte FROM DESK WHERE v_ID = '$ARGV[1]' AND Dte = '$ARGV[2]'" ); foreach( @$res ) { #print "$_->[0] $_->[1] $_->[2]\n"; print "$_->[0] $_->[1] $_->[2]\n" } } else { $res = $dbh->selectall_arrayref( "SELECT * FROM DESK" ); foreach( @$res ) { print "$_->[0] $_->[1] $_->[2]\n"; } } } $dbh->disconnect;