salt cmd.script

salt '*' cmd.script



cmd.run  这个前面说了


cmd.script

这个是比较强大的命令,意思是可以从远程下载一个脚本在客户端执行


CLIExample:

         salt '*' cmd.script salt://scripts/runme.sh

         salt '*' cmd.script salt://scripts/runme.sh 'arg1 arg2 "arg 3"'



帮助文档说Thescript can be located on the salt master file server or on an HTTP/FTP       server.


所以配置一下salt服务端把脚本放在服务端



编辑/etc/salt/master,打开下面的注释,保存后重启服务端

file_roots:

   base:

     - /srv/salt


如果没有/srv/salt/script目录就创建一个


cd/srv/salt/scripts


写一个shell脚本保存为1.sh

  1. #!/bin/bash

  2. echo  "test salt" > /tmp/testsalt.txt

复制代码




执行远程命令

  1. salt 'cn-gd-gz-0001' cmd.script salt://scripts/1.sh

复制代码





显示的信息还是很直观的,stdout没有信息显示是因为脚本语句没有显示文本,可以加多一句echo “ok”再执行多一次就可以看到输出了.


看帮助好像还可以在执行脚本时添加命令行参数,试试

修改脚本为

  1. #!/bin/bash

  2. echo  "test salt" > /tmp/testsalt.txt

  3. echo $1

  4. echo $2

  5. echo $3


  6. if [ "$3"x = "yy"x ]

  7. then

  8.    echo "ok ???????????????"

  9. fi

复制代码

再次执行远程命令

  1. salt 'cn-gd-gz-0001' cmd.script salt://scripts/1.sh "aa bb cc"

  2. salt 'cn-gd-gz-0001' cmd.script salt://scripts/1.sh "aa bb yy"

复制代码

看起来传递的参数有效的


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值