小编rus*_*sna的帖子

用于搜索单词的 Ansible 任务

通过我的 ansible 任务,我想检查环境中是否安装了openjdk 。

- name: Check if java is installed on environment
   shell: rpm -qa | grep 'openjdk'
   register: result
Run Code Online (Sandbox Code Playgroud)

结果我失败了,因为 grep 没有找到任何东西,返回码是 1。

任务 [xms_webapp:检查环境中是否安装了 java] ****************** 致命:[10.230.14.21]:失败!=> {“更改”:true,“cmd”:“rpm -qa | grep 'openjdk'”,“delta”:“0:00:00.721086”,“end”:“2019-02-20 12:17: 40.253171", "msg": "非零返回码", "rc": 1, "start": "2019-02-20 12:17:39.532085", "stderr": "", "stderr_lines": [ ], "stdout": "", "stdout_lines": []} 要重试,请使用: --limit @/opt/ngpe/share/playbooks/xms/xms.retry

作为替代方法,我尝试使用less命令和他的 -p 选项来使用模式。

rpm -qa > /tmp/openjdk.txt | less -p /'\w[openjdk]' /tmp/openjdk.txt
Run Code Online (Sandbox Code Playgroud)

但结果是“找不到模式”。

当我用 vim 打开文件并输入:/openjdk

我发现有通缉字。

plymouth-scripts-0.8.3-29.el6.x86_64
lm_sensors-libs-3.1.1-17.el6.x86_64
vim-minimal-7.4.629-5.el6_8.1.x86_64
adl-release-13-03.00.09.el6.noarch …
Run Code Online (Sandbox Code Playgroud)

less grep ansible

6
推荐指数
1
解决办法
3万
查看次数

标签 统计

ansible ×1

grep ×1

less ×1