30 lines
		
	
	
		
			746 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			746 B
		
	
	
	
		
			Python
		
	
	
	
	
	
#!/usr/bin/env python
 | 
						|
 | 
						|
import sys
 | 
						|
import fileinput
 | 
						|
 | 
						|
# Defaults
 | 
						|
TABSIZE = 4
 | 
						|
 | 
						|
usage = """
 | 
						|
Replaces all TAB characters with %(TABSIZE)d space characters.
 | 
						|
In addition, all trailing space characters are removed.
 | 
						|
usage: trim file ...
 | 
						|
file ... : files are changed in place without taking any backup.
 | 
						|
""" % vars()
 | 
						|
 | 
						|
def main():
 | 
						|
 | 
						|
    if len(sys.argv) == 1:
 | 
						|
        sys.stderr.write(usage)
 | 
						|
        sys.exit(2)
 | 
						|
 | 
						|
    # Iterate over the lines of all files listed in sys.argv[1:]
 | 
						|
    for line in fileinput.input(sys.argv[1:], inplace=True):
 | 
						|
        line = line.replace('\t',' '*TABSIZE);    # replace TABs
 | 
						|
        line = line.rstrip(None)  # remove trailing whitespaces
 | 
						|
        print line                # modify the file
 | 
						|
 | 
						|
if __name__ == '__main__':
 | 
						|
    main()
 |