看一段我的代码:
/**
* 判断复制操作的结果是成功还是失败。
*
* 复制操作的输出样例:
* TASK [copy file or directory located at remote into Ansible Host] ************************************
* changed: [192.168.12.101]
*
* PLAY RECAP *******************************************************************************************
* 192.168.12.101 : ok=2 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
*
* 说明:
* - PLAY RECAP 的下一行表示操作成功失败的信息。
* - 使用 copy 模块从 Ansible 复制文件或者目录到 Node ,ok=2 时操作成功。
* - 使用 fetch 模块从 Node 复制文件到 Ansible ,ok=2 时操作成功。
* - 使用 fetch 模块从 Node 复制目录到 Ansible ,ok=3 时操作成功。
*
* @
param copyOutput Ansible 复制操作的输出日志
* @
return 复制操作成功则返回 true ,否则返回 false
*/
public static boolean judgeCopySuccess(String copyOutput) {
String ok = null;
Matcher matcher = COPY_RESULT_PATTERN.matcher(copyOutput);
if (matcher.find()) {
// 获取 ok 的值
ok = matcher.group(1);
}
return "2".equals(ok) || "3".equals(ok);
}