Probleme d'encodage et d'affectation de variable en "OU"
Hello,
j'essais de faire un script pour pouvoir éteindre tout les ordinateurs sous windows du réseau, voila a quoi ressemble le script :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| import sys,os
# Options
DEFAULT_NODE_BASE = "192.168.1."
DEFAULT_NODE_START = 0
DEFAULT_NODE_END = 255
# Program code
try:
node_base = sys.argv[1]
node_start = int(sys.argv[2])
node_end = int(sys.argv[3])
except IndexError:
print("Unknkown IP range, asking...")
node_base = raw_input("Enter the node base [%]\n >" % DEFAULT_NODE_BASE) | DEFAULT_NODE_BASE
node_start = int(raw_input("Enter the sub-node start address [%s]\n >" % DEFAULT_NODE_START)) | DEFAULT_NODE_START
node_end = int(raw_input("Enter the sub-node end address [%s]\n >" % DEFAULT_NODE_END)) | DEFAULT_NODE_END
nodes = ["%s%s" % (node_base,node) for node in range(node_start,node_end)]
for node in nodes:
print("Requesting Shutdown of node %s" % (node))
os.system("shutdown -m \\%s -s f" % node) |
Seulement j'ai cette erreur je ne sait pas pourquoi :
Code:
1 2 3 4 5
| Unknkown IP range, asking...
Traceback (most recent call last):
File "shutdown_nodes.py", line 14, in <module>
node_base = raw_input("Enter the node base [%]\n >" % DEFAULT_NODE_BASE) | DEFAULT_NODE_BASE
ValueError: unsupported format character ']' (0x5d) at index 22 |
De plus je ne suis pas sure d'utiliser la bonne méthode pour le "OU", par exemple je veut que si l'utilisateur n'entre rien a "Enter the node base", que NODE_BASE soit DEFAULT_NODE_BASE, mais je pense que ca risque de poser probleme ici que que "" n'est pas Null...
Voila j'espere que vous pourrez m'aider,
Merci
PS: comment faire en sorte que print ne fasse pas de retour a la ligne de facon compatible avec python3k ? (donc pas " print truc, ")