以下是我需要使用ansible运行的代码 -
我需要在shell模块中包含scp和ssh命令,这可能吗?
列表文件包含我们需要复制文件的服务器的IP地址。
如何在我的剧本中包含以下部分代码。
for i in `cat /tmp/list`
do
echo $i
scp HLC_auth $i:.ssh/authorized_keys
scp known_hosts.LLC $i:.ssh/known_hosts
ssh $i "rm -rf .ssh/id_dsa*"
ssh $i "ssh-keygen -d"
done
我能够成功执行for循环任务,如下所示 -
shell: for i in `cat /home/dp794d/temp/list`;
do echo $i;
done
这给了我ip的列表,但是当我尝试在其下面包含scp命令时,它不起作用。
我想在脚本中转储所有这些代码并尝试运行脚本,但它仍然给我一些错误 -
出于测试目的,我创建了一个具有scp命令的脚本 -
我的脚本文件(abc.sh)包含以下scp命令 -
!/斌/庆典
scp /home/capio/ansible/pmossWipm/day1/playbooks/xyz.txt abc@130.6.50.131:/ home / user
我的yml看起来像 -
---
- hosts: testserver
tasks:
- name: "run the script"
script: /home/capio/ansible/pmossWipm/day1/scripts/abc.sh
但它仍然不起作用,它没有给出任何回应。我们需要终止它.- Playbook error screenshot
答案 0 :(得分:0)
使用for-loop作为Ansible剧本的基础......