ansible模块command、shell、raw、script
来源:互联网 发布:2.0音箱推荐 知乎 编辑:程序博客网 时间:2024/06/16 10:52
1
2
3
4
5
6
7
[root@node1 ansible]
# pwd
/etc/ansible
[root@node1 ansible]
# cat hosts
[testservers]
192.168.100.131
192.168.100.132
[root@node1 ansible]
#
1
2
SYNOPSIS
ansible <host-pattern> [-f forks] [-m module_name] [-a args]
1
ansible-doc moduleName
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
[root@node1 ansible]
# ansible-doc command
less
436
Copyright (C) 1984-2009 Mark Nudelman
less
comes with NO WARRANTY, to the extent permitted by law.
For information about the terms of redistribution,
see the
file
named README
in
the
less
distribution.
Homepage: http:
//www
.greenwoodsoftware.com
/less
> COMMAND
The [
command
] module takes the
command
name followed by a list of
space-delimited arguments. The given
command
will be executed on all
selected nodes. It will not be processed through the shell, so
variables like `$HOME
' and operations like `"<"'
, `
">"
', `"|"'
, and
`
"&"
' will not work (use the [shell] module
if
you need these
features).
Options (= is mandatory):
- chdir
cd
into this directory before running the
command
[Default:
None]
- creates
a filename, when it already exists, this step will *not* be
run. [Default: None]
- executable
change the shell used to execute the
command
. Should be an
absolute path to the executable. [Default: None]
= free_form
the
command
module takes a
free
form
command
to run. There is
no parameter actually named
'free form'
. See the examples!
[Default: None]
- removes
a filename, when it does not exist, this step will *not* be
run. [Default: None]
- warn
if
command
warnings are on
in
ansible.cfg,
do
not warn about
this particular line
if
set
to no
/false
. [Default: True]
Notes: If you want to run a
command
through the shell (say you are using
`<
', `>'
, `|', etc), you actually want the [shell] module
instead. The [
command
] module is much
more
secure as it's not
affected by the user
's environment. `creates'
, `removes', and
`chdir' can be specified after the
command
. For instance,
if
you only want to run a
command
if
a certain
file
does not
exist, use this.
EXAMPLES:
# Example from Ansible Playbooks.
-
command
:
/sbin/shutdown
-t now
# Run the command if the specified file does not exist.
-
command
:
/usr/bin/make_database
.sh arg1 arg2 creates=
/path/to/database
# You can also use the 'args' form to provide the options. This command
# will change the working directory to somedir/ and will only run when
# /path/to/database doesn't exist.
-
command
:
/usr/bin/make_database
.sh arg1 arg2
args:
chdir: somedir/
creates:
/path/to/database
1
2
3
4
5
6
7
8
[root@node1 ansible]
# ansible testservers -m command -a 'tail -2 /etc/passwd'
192.168.100.131 | success | rc=0 >>
postfix:x:89:89::
/var/spool/postfix
:
/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:
/var/empty/sshd
:
/sbin/nologin
192.168.100.132 | success | rc=0 >>
sshd:x:74:74:Privilege-separated SSH:
/var/empty/sshd
:
/sbin/nologin
tcpdump:x:72:72::/:
/sbin/nologin
1
2
3
4
5
6
7
8
9
10
11
12
13
[root@node1 ansible]
# ansible testservers -m command -a 'pwd'
192.168.100.132 | success | rc=0 >>
/root
192.168.100.131 | success | rc=0 >>
/root
[root@node1 ansible]
# ansible testservers -m command -a 'chdir=/tmp/ pwd'
192.168.100.131 | success | rc=0 >>
/tmp
192.168.100.132 | success | rc=0 >>
/tmp
关于ansbile工具的shell、command、script、raw模块的区别和使用场景
1
[root@node1 ansible]
# ansible testservers -m command -a 'uname -n'
1
[root@node1 ansible]
# ansible testservers -m script -a '/etc/ansible/test.sh
1
[root@node1 ansible]
# ansible testservers -m shell -a 'bash /root/test.sh'
1
[root@node1 ansible]
# ansible testservers -m raw -a "ifconfig eth0 |sed -n 2p |awk '{print \$2}' |awk -F: '{print \$2}'"
阅读全文
0 0
- ansible模块command、shell、raw、script
- 实例学习ansible系列(4)常用模块之command/shell/raw
- Ansible第三课: Command模块
- printf command in shell script
- Ansible系列(4): shell 模块
- 实例学习ansible系列(10)常用模块之script
- UNIX and Linux Shell Script Test Command
- linux command Line and shell script bible(笔记四)
- linux command Line and shell script bible(笔记五)
- linux command Line and shell script bible(笔记七)
- linux command Line and shell script bible(笔记八)
- linux command Line and shell script bible(笔记九)
- linux command Line and shell script bible(笔记十)
- linux command Line and shell script bible(笔记十一)
- linux command Line and shell script bible(笔记十二)
- linux command Line and shell script bible(笔记十三)
- linux command Line and shell script bible(笔记十四)
- linux command Line and shell script bible(笔记十五)
- MySQL自定义函数用法详解-复合结构自定义变量/流程控制
- Socket传中文乱码问题的解决
- 菱形继承
- K3忘记帐套管理员密码的解决办法
- 报错笔记
- ansible模块command、shell、raw、script
- http与cgi的小测试之GET
- 游戏应用渠道分析
- Java中的多线程你只要看这一篇就够了
- String,StringBuffer与StringBuilder的区别??
- Eclipse常用配置及快捷键-yellowcong
- java
- 3n+1问题
- python(运算符和表达式)