36 lines
		
	
	
		
			643 B
		
	
	
	
		
			Perl
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			643 B
		
	
	
	
		
			Perl
		
	
	
		
			Executable File
		
	
	
	
	
| #!/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
 | 
