36 lines
643 B
Plaintext
36 lines
643 B
Plaintext
|
#!/usr/bin/perl
|
||
|
|
||
|
# This is a script for removing trailing whitespace from lines in files that
|
||
|
# are listed on the command line.
|
||
|
|
||
|
# This subroutine does the work for one file.
|
||
|
|
||
|
sub detrail {
|
||
|
my($file) = $_[0];
|
||
|
my($changed) = 0;
|
||
|
open(IN, "$file") || die "Can't open $file for input";
|
||
|
@lines = <IN>;
|
||
|
close(IN);
|
||
|
foreach (@lines)
|
||
|
{
|
||
|
if (/\s+\n$/)
|
||
|
{
|
||
|
s/\s+\n$/\n/;
|
||
|
$changed = 1;
|
||
|
}
|
||
|
}
|
||
|
if ($changed)
|
||
|
{
|
||
|
open(OUT, ">$file") || die "Can't open $file for output";
|
||
|
print OUT @lines;
|
||
|
close(OUT);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
# This is the main program
|
||
|
|
||
|
$, = ""; # Output field separator
|
||
|
for ($i = 0; $i < @ARGV; $i++) { &detrail($ARGV[$i]); }
|
||
|
|
||
|
# End
|