繁体   English   中英

如何使用 Ansible Playbook 检查目标机器上安装的不同 JAVA?

[英]How to check different JAVA installed in target machine using Ansible Playbook?

我正在尝试编写一个 ansible playbook,这些是概述。

  1. Java - 打开 JDK 安装java -version
  2. Java - Oracle JDK 安装java --fullversion
  3. Java - 未安装。

我需要确定哪个目标机器安装了或没有安装什么 Java。

这几乎就是一切。

这是我写的,但这一次只给了我 java 版本。 感谢您的帮助。

- hosts: localhost
  gather_facts: False

  tasks:
   - name: Fetch Java version
     shell: java -version 2>&1 | grep version | awk '{print $3}' | sed 's/"//g'                                                                                                                                   
     changed_when: False
     register: java_result

   - debug:
       msg: "{{ java_result.stdout }}"```

当您没有 Java 时,您的 shell 将失败。 你可以检查一下。

- hosts: localhost
  gather_facts: False

  tasks:
   - name: Fetch Java version
     shell: java -version 2>&1 | grep version | awk '{print $3}' | sed 's/"//g'                                                                                                                                   
     changed_when: False
     register: java_result
     failed_when: false

   - debug: msg=No Java or something failed.
     when: java_result.rc!=0

   - debug:
       msg: "{{ java_result.stdout }}"```
     when: java_result.rc==0

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM