ogclone-engine/ogclient/scripts/listSoftwareInfo.py

40 lines
1.2 KiB
Python

#!/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'{ogGlobals.OGLOG}/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)