用ansible获取主机名中的最后一位字符,并存到变量中
时间: 2024-03-08 15:47:26 浏览: 22
可以使用 Ansible 的 `regex_search` 过滤器来实现这个需求。具体步骤如下:
1. 在 Ansible playbook 中定义一个变量,用于存储主机名中的最后一位字符。
```
vars:
last_char: ""
```
2. 使用 `regex_search` 过滤器来匹配主机名中的最后一位字符,并将其存入变量中。
```
- name: 获取主机名中的最后一位字符
set_fact:
last_char: "{{ inventory_hostname | regex_search('.$') }}"
```
这里使用了正则表达式 `.$` 来匹配主机名中的最后一位字符,其中 `.` 表示匹配任意字符,`$` 表示匹配字符串结尾位置。
3. 在需要使用这个变量的任务中,直接引用即可。
```
- name: 打印主机名中的最后一位字符
debug:
var: last_char
```
这样就可以将主机名中的最后一位字符存入变量中,并在后续任务中使用。
相关问题
通过ansible去获取服务器的内存大小,并存到变量中
可以使用Ansible的setup模块获取服务器的硬件信息,其中包括内存大小。可以将这些信息保存到变量中,示例代码如下:
```
- name: 获取服务器内存大小
hosts: server
gather_facts: yes
tasks:
- name: 打印内存大小
debug:
msg: "{{ ansible_memtotal_mb }}MB"
- name: 将内存大小存储到变量中
set_fact:
memory_size: "{{ ansible_memtotal_mb }}MB"
```
在上面的示例中,我们使用Ansible的setup模块获取服务器的硬件信息,并通过debug模块打印出了内存大小。然后,使用set_fact模块将内存大小存储到变量memory_size中,以便后续任务使用。
通过ansible去获取服务器的内存大小的百分之90,并存到变量中
可以通过ansible的setup模块来获取服务器信息,其中包括内存大小。然后再通过ansible的变量过滤器将内存大小乘以0.9得到90%的值,最后将其存入变量中。
具体实现如下:
```yaml
- name: 获取服务器内存大小并存到变量中
hosts: your_server
gather_facts: yes
vars:
memory_size: "{{ ansible_facts['memory']['real']['total'] }}"
memory_threshold: "{{ (memory_size | int) * 0.9 | int }}"
tasks:
- name: 打印内存大小
debug:
var: memory_size
- name: 打印90%的内存大小
debug:
var: memory_threshold
```
在上面的playbook中,`ansible_facts['memory']['real']['total']`可以获取到服务器的内存总大小,单位为字节。然后我们将其存储在`memory_size`变量中,并通过变量过滤器将其乘以0.9得到90%的值,最后存储在`memory_threshold`变量中。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)