split - 有没有办法在 Ansible 中拆分现有文件路径目录并在任务后期使用它?
问题描述
我是 Ansible 的新手并试图弄清楚拆分目录路径的事情,以便我可以将新路径存储在新变量中并稍后使用它。我将在下面删除我的剧本草稿。
---
- name: new directory path
hosts: servers
become: true
become_user: root
gather_facts: true
tasks:
- name: directory path1
file:
path: /home/usr/Desktop/hello/hello1
register: path1
- name: splitting path
file:
path: path1.split('/')
register: path2
我想要的是从 /home/usr/Desktop/hello/hello1 中提取:/home/usr/Desktop/hello 并将其存储在一个新的变量 path2 中,以便我以后可以使用 path2 。请建议我应该遵循什么?
解决方案
您可以使用dirname过滤器从路径中获取目录。下面的代码片段将设置/home/usr/Desktop/hello
为dir
.
请注意,不要/
在给定路径中添加尾随,否则 ansible 会认为该目录并将返回相同的路径。
- set_fact:
dir: "{{ '/home/usr/Desktop/hello/hello1' | dirname }}"
推荐阅读
- html - 我想在我的 HTML 文件中链接到我的外部 CSS 文件
- sqlite - 迭代 sqlite3_next_stmt() 时得到旧结果
- python - 无法从继承类将项目添加到字典中
- bash - 如何更改我的 bash_profile 以读取和公开我已经在某些脚本文件中定义的所有 func() ?
- javascript - 代码中需要更正哪些内容才能使其在智能手机上运行?
- cordova - Cordova VueJs Webpack 延迟加载在生产中失败
- python - 如何将数据权重包含到 Scipy NNLS 函数中?
- mysql - mysql插入忽略多行插入中已经可用的行
- python - IndexError:字符串索引超出范围 - Python
- html - 在反应材料-ui按钮中自动调整字体大小以获取意外的长内容?