Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Marklogic是否从多台服务器提取数据库状态?_Python_Database_Bash_Marklogic_Status - Fatal编程技术网

Python Marklogic是否从多台服务器提取数据库状态?

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

我需要创建一个bash(或python)脚本,它为我提供位于不同服务器上的多个数据库的可用性状态。我发现可以使用此url“$DBNAME/?view=status”获取状态。但我有大约20种不同的DBs。当您打开此链接时,它将生成一个包含数据库详细信息的xml。你能告诉我如何循环所有的链接和grep状态行吗?或者,如果您有任何其他想法,请告知

您可以将数据库名保存在一个文件中,然后使用for循环

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}/?视图=状态