13

docker-machine用来管理我的云服务器。我正在编写一些 bash 脚本来自动化一些任务。问题是:“如果具有特定名称的 docker 机器已经存在,如何检查 bash 脚本?”。如果存在,我需要一些表达式来返回 true,如果不存在,则返回 false。

谢谢

4

3 回答 3

14

如果正则表达式对您来说足够好,只需通过 grep 运行它。例如,如果您有一台名为 foo 的机器:

$ docker-machine ls -q | grep '^foo$'

应该工作并返回 0。插入符匹配行的开头,空格避免部分匹配。如果不匹配,您将获得非零返回码。

于 2015-06-10T18:25:04.317 回答
9

您可以使用以下内容:

docker-machine status some-machine 2> /dev/null || echo "Machine does not exists"
于 2015-12-03T13:05:19.333 回答
1

不是脚本大师,但我会做一个“ docker-machine help”,如果此命令运行并且退出代码($?)为零,则 docker-machine 可执行文件可用且正常运行。如果返回码是 127(通常是 bash 为找不到命令返回的)或非零以外的任何值,您可以假设 docker-machine 未安装或运行不正常。

于 2015-06-10T17:01:04.167 回答