Python Marklogic是否从多台服务器提取数据库状态?
我需要创建一个bash(或python)脚本,它为我提供位于不同服务器上的多个数据库的可用性状态。我发现可以使用此url“$DBNAME/?view=status”获取状态。但我有大约20种不同的DBs。当您打开此链接时,它将生成一个包含数据库详细信息的xml。你能告诉我如何循环所有的链接和grep状态行吗?或者,如果您有任何其他想法,请告知您可以将数据库名保存在一个文件中,然后使用for循环Python Marklogic是否从多台服务器提取数据库状态?,python,database,bash,marklogic,status,Python,Database,Bash,Marklogic,Status,我需要创建一个bash(或python)脚本,它为我提供位于不同服务器上的多个数据库的可用性状态。我发现可以使用此url“$DBNAME/?view=status”获取状态。但我有大约20种不同的DBs。当您打开此链接时,它将生成一个包含数据库详细信息的xml。你能告诉我如何循环所有的链接和grep状态行吗?或者,如果您有任何其他想法,请告知您可以将数据库名保存在一个文件中,然后使用for循环 for a in `cat dbname.txt` do status = `wget -qO- "h
for a in `cat dbname.txt`
do
status = `wget -qO- "http://marklogic:8002/manage/v2/database/${a}/?view=status"`
echo $a, $status
done
可能值得研究Github上的MarkLogic Python API项目:
嗯 是的,我是通过curl--anyauth--user-user:pass“${a}/?view=status感谢您的快速响应,但当我尝试在浏览器中打开它时,每次它都会要求我输入密码。如何添加用户和密码如果可以将密码作为参数传递,则可以在此处提供多个选项。您应该在url中传递密码。如果不允许,则应尝试使用wgetSet将密码设置为环境ent变量(非交互式)或在脚本启动时请求它一次(交互式)。我不知道wget,但使用cURL时,您可以使用
--user
和--digest
选项来指定摘要身份验证。上面提到的社区Python API可以为您处理所有这些。是的,我通过cURL--anyauth--user:pass“{a}/?视图=状态