forked from geekcomputers/Python
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This goes through the server list and pings the machine, if it is up …
…it will load the putty session, if its not it will notify you.
- Loading branch information
1 parent
1ab5159
commit b2d1e65
Showing
1 changed file
with
42 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
# Script Name : powerdown_startup.py | ||
# Author : Craig Richards | ||
# Created : 05th January 2012 | ||
# Last Modified : | ||
# Version : 1.0 | ||
|
||
# Modifications : | ||
|
||
# Description : This goes through the server list and pings the machine, if it's up it will load the putty session, if its not it will notify you. | ||
|
||
import os # Load the Library Module | ||
import subprocess # Load the Library Module | ||
from time import strftime # Load just the strftime Module from Time | ||
|
||
def windows(): # This is the function to run if it detects the OS is windows. | ||
f = open('server_startup_'+strftime("%Y-%m-%d")+'.log', 'a') # Open the logfile | ||
for server in open('startup_list.txt','r'): # Read the list of servers from the list | ||
ret = subprocess.call("ping -n 3 %s" % server, shell=True,stdout=open('NUL', 'w'),stderr=subprocess.STDOUT) # Ping the servers in turn | ||
if ret == 0: # If you get a response. | ||
f.write ("%s: is alive, loading PuTTY session" % server.strip() + "\n") # Write out to the logfile | ||
subprocess.Popen(('putty -load '+server)) # Load the putty session | ||
else: | ||
f.write ("%s : did not respond" % server.strip() + "\n") # Write to the logfile if the server is down | ||
|
||
def linux(): | ||
f = open('server_startup_'+strftime("%Y-%m-%d")+'.log', 'a') # Open the logfile | ||
for server in open('startup_list.txt'): # Read the list of servers from the list | ||
ret = subprocess.call("ping -c 3 %s" % server, shell=True,stdout=open('/dev/null', 'w'),stderr=subprocess.STDOUT) # Ping the servers in turn | ||
if ret == 0: # If you get a response. | ||
f.write ("%s: is alive" % server.strip() + "\n") # Print a message | ||
subprocess.Popen(['ssh', server.strip()]) | ||
else: | ||
f.write ("%s: did not respond" % server.strip() + "\n") | ||
|
||
# End of the functions | ||
|
||
# Start of the Main Program | ||
|
||
if os.name == "posix": # If the OS is linux... | ||
linux() # Call the linux function | ||
elif os.name in ("nt", "dos", "ce"): # If the OS is Windows... | ||
windows() # Call the windows function |