40 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
#!/usr/bin/python3
 | 
						|
# Scirpt de ejemplo para almacenear en fichero temporal el listado de software.
 | 
						|
# Nota: se usa como base para el programa de recogida de listado de software de OpenGnsys Admin.
 | 
						|
# Formato:  listSoftwareInfo [-r] ndisk npart
 | 
						|
#		-r   listado reducido (sin parches de Windows)
 | 
						|
 | 
						|
import os
 | 
						|
import sys
 | 
						|
import re
 | 
						|
import argparse
 | 
						|
 | 
						|
import ogGlobals
 | 
						|
import SystemLib
 | 
						|
import InventoryLib
 | 
						|
import NetLib
 | 
						|
 | 
						|
prog = os.path.basename (sys.argv[0])
 | 
						|
 | 
						|
def main (disk, par, reduced):
 | 
						|
    ip = NetLib.ogGetIpAddress()
 | 
						|
    softfile = f'/tmp/soft-{ip}-{disk}-{par}'
 | 
						|
    software_list = InventoryLib.ogListSoftware (disk, par)
 | 
						|
 | 
						|
    if reduced:
 | 
						|
        software_list = [line for line in software_list if not re.search (r'(KB[0-9]{6})', line)]
 | 
						|
 | 
						|
    with open (softfile, 'w') as f:
 | 
						|
        for line in software_list:
 | 
						|
            f.write (f'{line}\n')
 | 
						|
 | 
						|
    print (softfile)
 | 
						|
 | 
						|
if __name__ == '__main__':
 | 
						|
    parser = argparse.ArgumentParser (add_help=False)
 | 
						|
    parser.add_argument ('-r', '--reduced', action='store_true', default=False)
 | 
						|
    parser.add_argument ('disk')
 | 
						|
    parser.add_argument ('par')
 | 
						|
    args = parser.parse_args()
 | 
						|
    main (args.disk, args.par, args.reduced)
 |