我目前正在编写一个脚本,尝试绑定到特定conf.ini文件中的任意数量的服务器。我有一个for循环,它将尝试根据该文件中的信息为每个服务器进行绑定。
我希望能够实时输出正在发生的事情,即。 ('尝试绑定到服务器...'或'绑定成功')但是我的脚本在打印任何输出之前等待它连接到所有服务器。
我尝试过运行python -u script.py和sys.stdout.flush(),但似乎没有任何工作。
有谁知道如何解决这个问题?
for file in files:
conf_file = ConfigParser.ConfigParser()
conf_file.read(file)
connection_section = 'LDAP'
# Get Information from .ini Files
try:
hostname = conf_file.get(connection_section, 'hostname')
port = conf_file.get(connection_section, 'port')
username = conf_file.get(connection_section, 'username')
password = conf_file.get(connection_section, 'password')
except ConfigParser.NoOptionError:
print("One or more options in {} is invalid!".format(file))
print("Attempting to bind with {}:{}...".format(hostname, port))
sys.stdout.flush()
try:
connection = ldap.open(hostname, int(port))
connection.set_option(ldap.OPT_REFERRALS, 0)
connection.simple_bind_s(username, password)
print("Bind Success Attempting to query views...\n")
sys.stdout.flush()
except ldap.LDAPError as error:
print("There was an issue while attempting to bind to {}:{}.
[{}]\n".format(hostname, port, error[0]['desc']))