[Tutor] script question

Chris Hallman challman at gmail.com
Wed Oct 19 00:55:56 CEST 2005


Here is my latest revision, which works very well.

# This Python script was written to forward interface down messages
# to ESM1. If the incoming arguements match the interface file
# (c:\utils\interface.ini) then the message is forwarded.
#
# Author: tcdh
# Date: 09/22/05
# Modified: 10/04/05 changed os.system to use raw("r") strings. Used % and
join method to join
# the sys.argv's. replaced list generating lines with one line of code.
#


import ConfigParser, sys, os
section = sys.argv[1]
interface = sys.argv[3]
ini=ConfigParser.ConfigParser()
ini.read("c:\utils\interfaces.ini")
interface_list=ini.items(section)
for i in interface_list:
if i[1] == interface:
os.system(r"d:\tnd\bin\delkeep.exe -all -n l17aesm1 %s" % ("
".join(sys.argv[1:3]),)+
"*")
os.system(r"d:\tnd\bin\cawto.exe -cat NetNet -n l17aesm1 forward red held
%s" % (" ".join(sys.argv[1:5]),))
break


Again, thank you all for your input. I greatly appreciated it!!!! Let me
know if you have any further suggestions.



On 9/30/05, Kent Johnson <kent37 at tds.net> wrote:
>
> Chris Hallman wrote:
> >
> > Thanks for all the input!!! I really appreciate it. I need to post a
> > correction to my script. What I sent was an early version. I made a few
> > minor modifications:
>
> You don't seem to have incorporated any of the suggestions that you have
> received!
>
> I doubt that a 4000-line ini file will be any problem at all.
>
> Kent
>
> >
> > import ConfigParser, string, sys, os
> > section = sys.argv[1]
> > interface = sys.argv[3]
> > INI=ConfigParser.ConfigParser()
> > INI.read("c:\utils\interfaces.ini")
> > interface_entries=[p for p in INI.options
> > (section)]
> > interface_list=[INI.get(section, pw) for pw in interface_entries]
> > for i in interface_list:
> > if i == interface:
> > os.system("d:\\tnd\\bin\\cawto.exe -cat NetNet -n l17aesm1 forward red
> held " +
> > sys.argv[1] + " " + sys.argv[2] + " " + sys.argv[3] + " " + sys.argv[4])
> >
> >
> > I've researched what you all have suggested and I may need to switch to
> > reading the ini file line by line or using a different file parser. The
> > ini file is only 100 lines long now, but will likely grow to 500 line
> > and maybe to 4000 lines. To give you a better background of what I'm
> > doing with this script, it's running on a network management system that
> > receives traps. After some processing of the raw trap, messages get sent
> > to this script for further processing. These messages are for interface
> > down traps from routers and switches in our network. I use this script
> > to mitigate the number of interface down messages on our console. I need
> > to do this because we do not need to know when every port has gone down
> > (i.e. user ports). This script searches the ini file for a device name
> > match. Once it has found a match and if the interface matches as well, I
> > need to message forwarded to the console (the Windows command). If no
> > matching device or interface is found, then the script can just exit.
> >
> >
> > On 9/26/05, *Kent Johnson* <kent37 at tds.net <mailto:kent37 at tds.net>>
> wrote:
> >
> > Kent Johnson wrote:
> > > *TEST FIRST* Don't optimize until you know it is too slow and you
> > > have a test case that you can time to see if your 'optimizations' are
> > > making it faster.
> >
> > Pardon my shouting :-)
> >
> > Kent
> >
> > _______________________________________________
> > Tutor maillist - Tutor at python.org <mailto:Tutor at python.org>
> > http://mail.python.org/mailman/listinfo/tutor
> > <http://mail.python.org/mailman/listinfo/tutor>
> >
> >
>
> _______________________________________________
> Tutor maillist - Tutor at python.org
> http://mail.python.org/mailman/listinfo/tutor
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.python.org/pipermail/tutor/attachments/20051018/b96651cb/attachment.htm


More information about the Tutor mailing list