scriptutil

## 1 功能概述

scriptutil复制脚本到远程机的某个目录,然后在该目录执行脚本。

它的优点就是脚本是non-NSH的脚本。不支持NSH命令,执行起来的效果和runscript命令差不多,都可以将本地脚本在远程机器执行。它不支持并发执行,一般作为Bladelogic的扩展,来执行通用操作系统脚本。

可以直接看使用示例

## 2 使用示例

1 列出脚本库里所有的脚本

cloudexpress# scriptutil -l

EO-Banner                             - check if banner msg is present in banner file

EO-Collect_use_of_privileged_commands - Check if input file contains rules for suid/sgid program files

EO-Command_output                     - Run the command and check the output

……

2 执行脚本库里的脚本

scriptutil -h vm1 -s net_disabled_uucp

3 执行自定义脚本,并指定脚本参数ccc

scriptutil -h vm1 vm2 -s /root/uptime.sh -x ccc

4 指定脚本在远程机暂存的路径

scriptutil -h vm1 -s net_disabled_uucp -d /tmp/nsh

## 3语法

scriptutil [-d dir] [-f file] -h host1 [host2 ...] [-l] [-o file] -s scan [-x arg]

## 4 详细说明

scriptutil命令的目的是在远程服务器执行脚本,而远程服务器上不必存在此脚本(如果远程服务器上存在脚本,则可以直接通过nexec执行)。

scriptutil还支持脚本库(script library)的概念,进而支持操作系统抽象的概念。一个典型的task可能在不同的UNIX系统上有不同表现,但还是想要通过一个节点访问所有平台。

脚本库位于BSA服务器<install_directory>/share/sensors路径下,脚本以操作系统名作为扩展名(比如AIX的是xx.AIX,Linux的脚本为xx.Linux)。这些操作系统扩展脚本会覆盖通用脚本。因此,当要运行一个脚本时,scriptutil按如下规则在服务器上执行脚本:

1 确定远程机操作系统类型

2 在脚本库中根据脚本名,查找带有操作系统扩展名的脚本

3 如果找不到带有操作系统扩展名的脚本

4 复制脚本到远程服务器

5 执行脚本,并把stdout(标准输出)和stderr(标准错误)抓取过来

6 删除复制的远程服务器的脚本

## 5 命令参数

-d dir  默认的脚本暂存路径是/tmp,使用这个选项可指定脚本暂存路径

-f file  通过file文件指定要运行脚本的主机列表(一行一个主机)

-h host1 host2..hostn  指定要运行脚本的主机,以空格隔开

-l [name]  列出脚本库中的脚本,如果指定name的话,将列出匹配name的所有脚本

-o file 默认情况下脚本结果会输出到执行者机器的标准输出,使用这个选项可以指定结果输出到执行者本地机器的某个file中

-s script 指定要运行的脚本。如果脚本存在的话,则会复制到远程机并执行,如果不存在,脚本库会根据操作系统类型进行搜索看是否有默认脚本可供使用。

## 6版权

scriptutil的作者是Thomas Kraus

BSA Network Shell系列-scriptutil命令的更多相关文章

  1. BSA Network Shell系列-nexec命令

    # nexec ## 1 说明:nexec是远程命令接口引擎 ,用于在远程主机执行命令 nexec [-?] [-t term] [-o] [-i] [-l] [-nohup hostname &qu ...

  2. BSA Network Shell系列-nsh命令

    nsh nsh命令软链接到zsh,直接运行nsh可进入Network Shell,所有的Network Shell命令都需要运行nsh进入Network Shell执行 1 使用cd命令访问远程主机和 ...

  3. BSA Network Shell系列-redi命令

    redi ## 1 功能概述 redi将输出重定向到一个文件中 ## 2 语法 redi [-?] [-a] filename ## 3 使用示例 1 将输出重定向到隐式路径所在主机的/tmp/hah ...

  4. BSA Network Shell系列-nlogin命令

    nlogin 1 说明 nlogin 是一种通过RSCD Agent的通信的安全远程登录,使用和NSH工具相同的加密协议.可以作为telnet.rlogin或者ssh的替代工具(假如这些端口或协议禁用 ...

  5. BSA Network Shell系列-nexec | runcmd | runscript | scriptutil的异同

    说明下nexec.runcmd.runscript.scriptutil的异同 相同点: 四者都可以在远程机器执行命令.或者调用脚本. 不同点: nexec支持NSH命令,可以执行远程机的本地命令(非 ...

  6. BSA Network Shell系列-runcmd/runscript命令

    runcmd和runscript ## 1 功能概述 runcmd/runscript:runcmd在一台或多台机器执行Network Shell命令(单个命令),而runscript执行的是脚本,二 ...

  7. BSA Network Shell系列-通过NSH执行Powershell,VBScript或bat files脚本

    参考:Running Powershell, VBScript, or bat files via NSH 如果你直接在NSH命令行执行的话,可以参考我翻译的下面的东东,如果想运行NSH 脚本作业的话 ...

  8. Linux Shell系列教程之(八)Shell printf命令详解

    本文是Linux Shell系列教程的第(八)篇,更多shell教程请看:Linux Shell系列教程 在上一篇:Linux Shell系列教程之(七)Shell输出这篇文章中,已经对Shell p ...

  9. Linux Shell系列教程之(十六) Shell输入输出重定向

    本文是Linux Shell系列教程的第(十六)篇,更多Linux Shell教程请看:Linux Shell系列教程 Shell中的输出和输入的重定向是在使用中经常用到的一个功能,非常实用,今天就为 ...

随机推荐

  1. Java学习笔记14(面向对象七:final、static)

    final:意为最终,不可变,是一个修饰词 有时候一个类地功能被开发好了,不想让子类重写,修改,这里就会用到final关键字 final修饰类: 不可以被继承,但是可以继承其他类 示例: public ...

  2. C语言中处理结构体的原理

    汇编中有几种寻址方式,分别是直接寻址:(ds:[idata]).寄存器间接寻址(ds:[bx]).寄存器相对寻址(ds:[bx + idata].ds:[bx + si])基址变址寻址(ds:[bx ...

  3. Java设计模式总汇二(小白也要飞)

    PS:上一篇我介绍了适配器设计模式.单例设计模式.静态代理设计模式.简单工厂设计模式,如果没有看过第一篇的小火鸡可以点这个看看http://www.cnblogs.com/cmusketeer/p/8 ...

  4. 使用Xamarin实现跨平台移动应用开发(转载)

    刚在朋友圈看到张善友,转发的一条分享“使用Xamarin实现跨平台移动应用开发”,写的确实很详细得体,从收费到开源,这段时间xamarin受到不少质疑,如此文http://blog.csdn.net/ ...

  5. 远程SCP报错,报22号口错误

    格式: scp root@ip地址/远程服务器文件地址 本地服务器地址 查看了半天发现无法联通,最终22端口不通 后来经过同事提示,忽然想到要经过跳板进行转发才能够登录. 想到自己配置了ssh文件 直 ...

  6. vue.js之数据传递和数据分发slot

    一.组件间的数据传递 1.父组件获取子组件的数据 *子组件把自己的数据,发送到父级 *vm.$emit(事件名,数据); *v-on: @ 示例用法:当点击send按钮的时候,"111&qu ...

  7. cain使用方法

    首先安装cain,这里就不废话了 1, 选择中核弹标志左边的按一下,然后在sniffer右键点击第一个扫描内网所有ip 扫描完后选择网关的IP下面选择arp标志,在按一下上方空格处,+号变得可以使用了 ...

  8. bzoj 3295: [Cqoi2011]动态逆序对(树套树 or CDQ分治)

    Description 对于序列A,它的逆序对数定义为满足i<j,且Ai>Aj的数对(i,j)的个数.给1到n的一个排列,按照某种顺序依次删除m个元素,你的任务是在每次删除一个元素之前统计 ...

  9. Codeforces Round #415 (Div. 2)(A,暴力,B,贪心,排序)

    A. Straight «A» time limit per test:1 second memory limit per test:256 megabytes input:standard inpu ...

  10. ACM_高次同余方程

    /*poj 3243 *解决高次同余方程的应用,已知 X^Y = K mod Z, 及X,Z,K的值,求 Y 的值 */ #include<cstdio> #include<cstr ...