Ansible学习笔记11

Command和Shell模块:

两个模块都是用于执行Linux命令的,这个对于命令熟悉的工程师来说,用起来非常high。

Shell模块跟Command模块差不多(Command模块不能执行一类$HOME、> 、<、| 等符号,但是Shell是可以的。)

示例一:

bash 复制代码
[root@localhost ~]# ansible group1 -m command -a "useradd test2"
192.168.17.106 | CHANGED | rc=0 >>

192.168.17.105 | CHANGED | rc=0 >>

检查结果:

删除用户:

bash 复制代码
[root@localhost ~]# ansible group1 -m command -a "userdel -r test2"
192.168.17.106 | CHANGED | rc=0 >>

192.168.17.105 | CHANGED | rc=0 >>

检查结果:

示例二:

示例三:

bash 复制代码
[root@localhost ~]# ansible group1 -m shell -a "cd $HOME; pwd"
192.168.17.106 | CHANGED | rc=0 >>
/root
192.168.17.105 | CHANGED | rc=0 >>
/root
[root@localhost ~]#

说明:其中有;也是Command和Shell模块的区别之一。

需要说明的是,Shell模块也不是百分之百的任何命令都可以,比如vim和ll命令别名命令就不可以。不建议大家去记忆哪些命令不可以,只要养成习惯,在生产环境中都要进行下测试的习惯就好了。

使用Shell和Command和Script模块,我们就能做很多事情。

相关推荐
萌动的小火苗7 小时前
Linux进程线程面试题【无答案】
linux·运维·服务器·c语言·开发语言
cuijiecheng20187 小时前
Linux下ss命令用法
linux·运维·服务器
小小龙学IT7 小时前
C++ std::chrono 时间库深度解析:从 duration 模板到 C++20 日历与时区
linux·c++·c++20
Doraemomo7 小时前
Linux编程-epoll多路IO复用
linux·运维·服务器
kmomo..7 小时前
Linux 进程学习笔记
linux·笔记·学习
Tanner_SL8 小时前
Linux笔记之PATH, LD_LIBRARY_PATH和LIBRARY_PATH的区别
linux·运维·笔记
Mapleay8 小时前
Linux 内核调试
linux
从零开始的嵌入式之旅9 小时前
day32
linux·c语言·经验分享·笔记·嵌入式硬件
秃秃秃秃哇9 小时前
orin上sensor一帧raw图大小的计算
linux
byte轻骑兵9 小时前
【BlueZ 】蓝牙配对/绑定基础:BlueZ 中安全机制的入门级源码解析
linux·人工智能·bluez·电脑蓝牙·嵌入式蓝牙