CasperSecurity

Current Path : /usr/share/rsync/scripts/
Upload File :
Current File : //usr/share/rsync/scripts/cvs2includes

#!/usr/bin/perl
#
# This script finds all CVS/Entries files in the current directory and below
# and creates a local .cvsinclude file with non-inherited rules including each
# checked-in file.  Then, use this option whenever using --cvs-exclude (-C):
#
# 	-f ': .cvsinclude'
#
# That ensures that all checked-in files/dirs are included in the transfer.
# (You could alternately put ": .cvsinclude" into an .rsync-filter file and
# use the -F option, which is easier to type.)
#
# The downside is that you need to remember to re-run cvs2includes whenever
# you add a new file to the project.
use strict;

open(FIND, 'find . -name CVS -type d |') or die $!;
while (<FIND>) {
    chomp;
    s#^\./##;

    my $entries = "$_/Entries";
    s/CVS$/.cvsinclude/;
    my $filter = $_;

    open(ENTRIES, $entries) or die "Unable to open $entries: $!\n";
    my @includes;
    while (<ENTRIES>) {
	push(@includes, $1) if m#/(.+?)/#;
    }
    close ENTRIES;
    if (@includes) {
	open(FILTER, ">$filter") or die "Unable to write $filter: $!\n";
	print FILTER map "+ /$_\n", @includes;
	close FILTER;
	print "Updated $filter\n";
    } elsif (-f $filter) {
	unlink($filter);
	print "Removed $filter\n";
    }
}
close FIND;
Hacker Blog, Shell İndir, Sql İnjection, XSS Attacks, LFI Attacks, Social Hacking, Exploit Bot, Proxy Tools, Web Shell, PHP Shell, Alfa Shell İndir, Hacking Training Set, DDoS Script, Denial Of Service, Botnet, RFI Attacks, Encryption
Telegram @BIBIL_0DAY