vincent wehren wrote:
> "rbt" <[EMAIL PROTECTED]> schrieb im Newsbeitrag 
> news:[EMAIL PROTECTED]
> | The below script produces a '[Errno 9] Bad File Descriptor' when
> | executed. If I remove the try: except: statements, the script stops when
> | the error occurs.
> |
> | The purpose of the script is to monitor the size of the three main logs
> | on a Windows 2003 server and send and email should any of the logs get
> | shorter. It works fine... just don't know *why* it produces the '[Errno
> | 9] Bad File Descriptor' error.
> |
> | I'm running Python 2.4.1 on Windows 2003 SP1 Server with no funky win32
> | extensions ;)
> |
> | logs = ['AppEvent.Evt', 'SecEvent.Evt', 'SysEvent.Evt']
> |
> | app_size = 0
> | sec_size = 0
> | sys_size = 0
> |
> | def send_email(LogName, old_size, new_size):
> |     f = "Somebody<[EMAIL PROTECTED]>"
> |     t = "[EMAIL PROTECTED]"
> |
> |     msg = MIMEText("""old_size = %d, new_size = %d""" %(old_size,
> | new_size))
> |
> |     msg["Subject"] = "%s Log Just Got Shorter" %LogName
> |     msg["Message-id"] = email.Utils.make_msgid()
> |     msg["From"] = f
> |     msg["To"] = t
> |
> |     h = "smtp.vt.edu"
> |     s = smtplib.SMTP(h)
> |     s.sendmail(f, t, msg.as_string())
> |     s.quit()
> |
> | while 1:
> |
> |     for log in logs:
> |
> |         try:
> |
> |             a = os.stat('C:\WINDOWS\System32\config\%s' %log)
> 
> Without looking at the rest of script:
> 
> Try using either escaped backslashes as in:
> 
> a = os.stat('C:\\WINDOWS\\System32\\config\\%s' %log)
> 
> or a raw string (as long as it doesn't end with a single backslash) as in:
> 
> a = os.stat(r'C:\WINDOWS\System32\config\%s' %log)
> 
> or simply use forward slashes as in:
> 
> a = os.stat('C:/WINDOWS/System32/config/%s' %log)

Thanks, that worked.
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to