ansible的shell模块

作用:在远程机器上执行命名(复杂的命令)

shell模块支持的参数和解释(部分)

chdir 在执行命令之前,通过cd进入该参数指定的目录

creates 定义一个文件是否存在,如果存在则不执行该命令;如果不存在该文件,则执行shell命令

free_form 参数信息中可以输入任何的系统指令,实现远程管理

removes 定义

一个文件是否存在,如果存在该文件,则执行命令;如果不存在,则跳过

 shell模块案例

批量在客户端机器,创建写入文件信息

[root@m01 ~]# ansible change -m shell -a "echo 你真棒>/tmp/heihei.txt"
192.168.200.5 | CHANGED | rc=0 >>

192.168.200.6 | CHANGED | rc=0 >>
在另外俩个主机上查询,存在该文件
[root@rsnc01 ~]# ls /tmp |grep heihei.txt
heihei.txt
[root@nfs01 ~]# ls /tmp |grep heihei.txt
heihei.txt

批量查询进程信息

#现在俩个被管理的主机上创建个vi的编辑任务,放在后台运行
[root@rsnc01 ~]# vi 11.sh &
[1] 3305
[root@nfs01 ~]# vi 11.sh &
[1] 3274
在ansible主机上进行查询
[root@m01 ~]# ansible change -m shell -a "ps -ef|grep vi"
192.168.200.5 | CHANGED | rc=0 >>
root        696      1  0 08:16 ?        00:00:00 /usr/bin/VGAuthService -s
root       3305   1809  0 15:33 pts/0    00:00:00 vi 11.sh
root       3413   3412  0 15:38 pts/1    00:00:00 /bin/sh -c ps -ef|grep vi
root       3415   3413  0 15:38 pts/1    00:00:00 grep vi
192.168.200.6 | CHANGED | rc=0 >>
root        692      1  0 08:16 ?        00:00:00 /usr/bin/VGAuthService -s
root       3274   1807  0 15:33 pts/0    00:00:00 vi 11.sh
root       3369   3368  0 15:38 pts/1    00:00:00 /bin/sh -c ps -ef|grep vi
root       3371   3369  0 15:38 pts/1    00:00:00 grep vi
再进一步的筛选查询
[root@m01 ~]# ansible change -m shell -a "ps -ef|grep vi|grep -v vice|grep -v grep"
192.168.200.5 | CHANGED | rc=0 >>
root       3305   1809  0 15:33 pts/0    00:00:00 vi 11.sh
192.168.200.6 | CHANGED | rc=0 >>
root       3274   1807  0 15:33 pts/0    00:00:00 vi 11.sh
#grep -v +参数,反向查找,只打印不匹配的行,相当于筛选掉带参数的行

 批量远程执行脚本

该需要执行的脚本,必须要求在客户端机器上存在,否则会报错文件不存在,这是shell模块的特点,是因为还有一个专门执行脚本的script模块

注意:脚本必须在客户端机器上存在才行

1.创建文件夹

2.创建sh脚本文件,还要写入脚本内容

3.赋予脚本可执行权限

4.执行脚本

5.忽略warning信息

 

[root@m01 ~]# ansible change -m shell -a "mkdir -p /server/myscripts/;echo 'hostname'>/server/myscripts/hostname.sh;chmod +x /server/myscripts/hostname.sh;bash /server/myscripts/hostname.sh warn=False "
192.168.200.6 | CHANGED | rc=0 >>
nfs01
192.168.200.5 | CHANGED | rc=0 >>
rsnc01

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值