[英]python command line argument and pass it as username and password in script
我正在尝试编写 python 脚本来登录我的一台服务器并进行一些检查。 为此,我想将我的 url、用户名和密码传递给脚本。 类似于 script.py 1.1.1.2 admin admin 。 我想在我的脚本中使用IP 、 USERNAME和PASSWORD 。我可以将它用作打印 IP 吗? 使用以下方法时出现凭据错误
> File "/usr/lib/python2.6/site-packages/redfish/rest/v1.py", line
> 1064, in login
> raise InvalidCredentialsError(delay) redfish.rest.v1.InvalidCredentialsError: 10
这是我的脚本
import sys
from _restobject import RestObject
IP = sys.argv[1]
USERNAME = sys.argv[2]
PASSWORD = sys.argv[3]
def ex3_change_bios_setting(restobj, bios_property, property_value, \
):
sys.stdout.write("\nEXAMPLE 3: Change a BIOS setting\n")
instances = restobj.search_for_type("HpBios.")
for instance in instances:
body = {bios_property: property_value}
response = restobj.rest_patch(instance["href"], body, \
)
restobj.error_handler(response)
if __name__ == "__main__":
iLO_https_url = "https://"+ IP +""
iLO_account = PASSWORD
iLO_password = USERNAME
#Create a REST object
REST_OBJ = RestObject(iLO_https_url, iLO_account, iLO_password)
ex3_change_bios_setting(REST_OBJ, "InternalSDCardSlot", "Disabled")
您可以通过python中的+
运算符将字符串与硬编码值连接起来。 试试这个代码。 它工作正常。
IP = sys.argv[1]
USERNAME = sys.argv[2]
PASSWORD = sys.argv[3]
iLO_https_url = "https://"+ IP +""
iLO_account = PASSWORD
iLO_password = USERNAME
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.