Ansible 如何在远程机器上逐行读取文件

Ansible 如何在远程机器上逐行读取文件,ansible,Ansible,第一行:/u01/app/oracle/oradata/TEST/ 第二行:/u02/ 如何读取同一变量中的两行,并使用同一变量,我想通过ansible中的shell命令了解当前的工作目录。下面的任务从一个文件创建行列表 - set_fact: lines_list: "{{ lines_list|default([]) + [item] }}" with_lines: cat /path/to/file 可以创建两个列表 "lines_list": [ "/u01/app

第一行:
/u01/app/oracle/oradata/TEST/

第二行:
/u02/


如何读取同一变量中的两行,并使用同一变量,我想通过ansible中的shell命令了解当前的工作目录。下面的任务从一个文件创建行列表

- set_fact:
    lines_list: "{{ lines_list|default([]) + [item] }}"
  with_lines: cat /path/to/file
可以创建两个列表

"lines_list": [
    "/u01/app/oracle/oradata/TEST/", 
    "/u02/"
]
还有一本字典

"lines_dict": {
    "0": "/u01/app/oracle/oradata/TEST/", 
    "1": "/u02/"
}
使用联合收割机过滤器


“通过ansible中的shell命令显示工作目录”可以从注册变量打印出来。比如说

- command: echo $PWD
  register: result
- debug:
    var: result.stdout

(未测试)

下面的任务从文件中创建行列表

- set_fact:
    lines_list: "{{ lines_list|default([]) + [item] }}"
  with_lines: cat /path/to/file
可以创建两个列表

"lines_list": [
    "/u01/app/oracle/oradata/TEST/", 
    "/u02/"
]
还有一本字典

"lines_dict": {
    "0": "/u01/app/oracle/oradata/TEST/", 
    "1": "/u02/"
}
使用联合收割机过滤器


“通过ansible中的shell命令显示工作目录”可以从注册变量打印出来。比如说

- command: echo $PWD
  register: result
- debug:
    var: result.stdout

(未测试)

您可以使用命令从磁盘读取文件

  - name: Read a file into a variable
    command: cat /path/to/your/file
    register: my_variable
然后执行下面的操作来循环文件中的行

- debug: msg="line: {{ item }}"
  loop: y_variable.stdout_lines

您可以使用命令从磁盘读取文件

  - name: Read a file into a variable
    command: cat /path/to/your/file
    register: my_variable
然后执行下面的操作来循环文件中的行

- debug: msg="line: {{ item }}"
  loop: y_variable.stdout_lines

请你把下面的解释清楚一点好吗。我不明白你想干什么。>如何读取同一个变量中的两行,并使用同一个变量,我想通过中的shell命令了解当前的工作目录ansible@Raghu:欢迎!跟我来。@MattSeymour实际上我发了两行。那在一个文件里。我想把每一行都读入一个变量。情况如何?请你能更好地解释一下以下内容吗。我不明白你想干什么。>如何读取同一个变量中的两行,并使用同一个变量,我想通过中的shell命令了解当前的工作目录ansible@Raghu:欢迎!跟我来。@MattSeymour实际上我发了两行。那在一个文件里。我想把每一行都读入一个变量。怎么样?谢谢,但是内容在一个文件里。通过该文件,我必须逐行注册。这是我的问题谢谢,但是内容在一个文件中。通过该文件,我必须逐行注册。这是我的问题