Python pexpect检查服务器是否已启动

时间:2016-10-02 16:45:21

标签: python pexpect

我在CentOS上自动完成了一些配置步骤。为此,我还需要重启系统。我正在通过python pexepct调用“rebo​​ot”命令,但是我需要等到系统启动才能执行剩余的脚本。为此,我写了这段小代码。

    while True:
        result = commands.getoutput("ping -c 4 192.168.36.134")
        if result.find("Unreachable") == 1:
            result = False
            print 'Rebooting the Systems.'
        else:
            result = True
            print 'Connected!'
            break

有没有更好的方法呢?另外,我们可以用pexepct本身实现这个目标吗?

1 个答案:

答案 0 :(得分:3)

你可以试试这个:

function stringFormat(str) {
  if (str !== undefined && str !== null) {
    str = String(str);
    if (str.trim() !== "") {
      var args = arguments;
      return str.replace(/(\{[^}]+\})/g, function(match) {
        var n = +match.slice(1, -1);
        if (n >= 0 && n < args.length - 1) {
          var a = args[n + 1];
          return (a !== undefined && a !== null) ? String(a) : "";
        }
        return match;
      });
    }
  }
  return "";
}

alert(stringFormat("{1}, {0}. You're looking {2} today.",
  "Dave", "Hello", Math.random() > 0.5 ? "well" : "good"));

此示例比使用ping

更有效