📄 pls_newdb
字号:
: # *-*-perl-*-* eval 'exec perl -S $0 "$@"' if $running_under_some_shell; ## pls_newdb - Creates a new PLWeb database, and deletes the old one## Darren Hardy, University of Colorado - Boulder, July 1995## pls_newdb,v 1.1 1995/07/26 18:22:33 hardy Exp#$ENV{'HARVEST_HOME'} = "/usr/local/harvest" if (!defined($ENV{'HARVEST_HOME'}));unshift(@INC, "$ENV{'HARVEST_HOME'}/lib"); # use local files $debug = 0;&usage() if ($#ARGV != 2);$bname = shift(@ARGV);$dbgroup = shift(@ARGV);$plsroot = shift(@ARGV);$dbgroupdir = "$plsroot/DBGROUPS/$dbgroup";$dbdir = "$dbgroupdir/databases";die "plsroot: $plsroot: $!\n" if (! -d $plsroot);die "dbgroup: $dbgroupdir: $!\n" if (! -d $dbgroupdir);&delete_prev_dbase();&show_dbase();&create_dbase();exit 0; ## END OF PROGRAM ##sub usage { print STDERR "Usage: pls_newdb bname dbgroup plsroot\n"; exit 1;}# delete the old PLWeb database $bname in $dbgroupsub delete_prev_dbase { if (-e "${dbdir}/${bname}.def") { print "Deleting previous database for $bname.\n" if ($debug); &do_system("rm -f $dbdir/${bname}*"); } else { print "No previous database for $bname.\n" if ($debug); } return if (! -d $dbgroupdir); $tmpfile = "/tmp/pls_newdb.$$"; # remove references from database.tab and dblist.cpl foreach $f ("database.tab", "dblist.cpl") { next if (! -e "$dbgroupdir/$f"); &do_system("cp $dbgroupdir/$f $tmpfile"); &do_system("rm -f $dbgroupdir/$f"); &do_system("grep -v $bname $tmpfile > $dbgroupdir/$f"); unlink($tmpfile); }}sub show_dbase { # create configuration files for dbgroup open(OUT, ">>$dbgroupdir/database.tab") || die "$dbgroupdir/database.tab: $!\n"; print OUT "Show $bname\n"; close(OUT);}sub create_dbase { print "Creating database for $bname\n" if ($debug); mkdir("$dbdir", 0755) if (! -d "$dbdir"); &do_system("touch $dbdir/$bname.def"); &do_system("cd $dbdir; plcreate -v -g $dbgroup $bname");}sub do_system { local($cmd) = @_; print "DOING: $cmd\n" if ($debug); return system($cmd);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -