1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
#!/bin/sh
find_files() {
find . \( \( \! -path './objdir*' \) \
\( -name '*.h' -o -name '*.hxx' -o -name '*.cxx' \) \)
}
find_files | while read file ; do
echo "modifying file $file";
perl -wn -i.bak -e '
use strict;
my $YEAR = 2017;
my $sep = qr/[\s,;]/;
if (/copyright/i)
{
print STDERR;
}
if (/(copyright $sep+ (?:\(c\) $sep+)? (?:\d{4})) (\s* - \s*) (\d{4})/ixgp)
{
#print STDERR "($1) ($2) ($3)\n";
#print STDERR "${^PREMATCH}$1$2$YEAR${^POSTMATCH}";
print "${^PREMATCH}$1$2$YEAR${^POSTMATCH}";
}
elsif (/(copyright $sep+ (?:\(c\) $sep+)? (\d{4}))/ixgp)
{
#print STDERR "($1)\n";
#print STDERR "${^PREMATCH}$1-$YEAR${^POSTMATCH}";
print "${^PREMATCH}$1-$YEAR${^POSTMATCH}";
}
else
{
print;
}
' $file;
done
|