分配如下:
让我们在创建任务之前创建一个文件afile.txt
创建一个剧本test.yml用于
将afile.txt从您的控制计算机复制到/ home / ubuntu /位置的主机作为afile_copy.txt并 调试上述任务以显示返回值 执行您的剧本(test.yml)并观察输出
我确实关注了
- name: copy files
hosts: all
tasks:
- name: copy file
command: cp afile.txt /home/ubuntu/afile_copy.txt
register:output
- debug: var=output
当我使用命令运行剧本时 ansible-playbook -i myhosts test.yml 它失败并显示错误消息
stderr:cp:无法统计'afile.txt':没有此类文件或目录
afile.txt位于目录/ home / scrapbook / tutorial
答案 0 :(得分:1)
您应该使用复制模块而不是命令模块。命令模块在远程节点上执行。
答案 1 :(得分:0)
1)首先执行临时命令进行复制:
可以使用所有-i myhosts -m复制-a“ src = afile.txt dest = / home / ubuntu /”
主机:全部
任务:
状态:path = / home / ubuntu / afile_copy.txt
注册:st
名称:重命名
命令:mv afile.txt /home/ubuntu/afile_copy.txt
何时:不存在st.stat。
注册:输出
答案 2 :(得分:0)
应使用复制模块代替命令模块
- name: copy files
hosts: all
tasks:
- name: copy file
copy: src=afile.txt dest=/home/ubuntu/afile_copy.txt
register:output
- debug: var=output
答案 3 :(得分:0)
---
- name: copy files
hosts: all
tasks:
- name: copy file
copy:
src: afile.txt
dest: /home/ubuntu/afile_copy.txt
register: output
- debug: var=output