chiark / gitweb /
Merge from existing archive branch
[pcre3.git] / Detrail
1 #!/usr/bin/perl
2
3 # This is a script for removing trailing whitespace from lines in files that
4 # are listed on the command line.
5
6 # This subroutine does the work for one file.
7
8 sub detrail {
9 my($file) = $_[0];
10 my($changed) = 0;
11 open(IN, "$file") || die "Can't open $file for input";
12 @lines = <IN>;
13 close(IN);
14 foreach (@lines)
15   {
16   if (/\s+\n$/)
17     {
18     s/\s+\n$/\n/;
19     $changed = 1;
20     }
21   }
22 if ($changed)
23   {
24   open(OUT, ">$file") || die "Can't open $file for output";
25   print OUT @lines;
26   close(OUT);
27   }
28 }
29
30 # This is the main program
31
32 $, = "";   # Output field separator
33 for ($i = 0; $i < @ARGV; $i++) { &detrail($ARGV[$i]); }
34
35 # End