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. python-集合内置函数详解

        集合(S).方法名 等价符号 方法说明 s.issubset(t) s<=t 子集测试(允许不严格意义上的子集):s中所有的元素都是t的成员   s<t 子集测试(严格意义上的子集 ...

  2. sqoop数据迁移(基于Hadoop和关系数据库服务器之间传送数据)

    1:sqoop的概述: (1):sqoop是apache旗下一款“Hadoop和关系数据库服务器之间传送数据”的工具.(2):导入数据:MySQL,Oracle导入数据到Hadoop的HDFS.HIV ...

  3. flask-日料网站搭建-数据库操作

    引言:想使用python的flask框架搭建一个日料网站,主要包含web架构,静态页面,后台系统,交互,目前已经copy完主页,不是前端太慢太慢. 本节知识:数据库的操作,模型建表,更新数据库. py ...

  4. java_web学习(三) eclipse_jsp学习

    1.首先打开eclipse,新建一个Dynamac web project项目文件 2.在WebContent单击右键创建JSP File 3.过程 4.简单的jsp代码 运行结果: 5.导出war文 ...

  5. echarts图表属性设置

    原地址:http://blog.csdn.net/she_lover/article/details/51448967theme = { // 全图默认背景 // backgroundColor: ‘ ...

  6. 解析库-beautifulsoup模块

    # -*- coding: utf-8 -*- from bs4 import BeautifulSoup # 安装:pip install beautifulsoup4 # Beautiful So ...

  7. ASP.NET Core Razor中处理Ajax请求

    如何ASP.NET Core Razor中处理Ajax请求 在ASP.NET Core Razor(以下简称Razor)刚出来的时候,看了一下官方的文档,一直没怎么用过.今天闲来无事,准备用Rozor ...

  8. laravel 生成 key

    把 .env.example 文件 复制并重命名为 .env 文件 命令行运行 php artisan key:generate php artisan key:generate

  9. AtCoder Grand Contest 019

    最近比较懒,写了俩题就跑了 A - Ice Tea Store 简化背包 #include<cstdio> #include<algorithm> using namespac ...

  10. UVAlive 3708 Graveyard(最优化问题)

    题目描述: 在周长10000的圆上,初始等距的放置着n个雕塑,现在新加入m个雕塑,要使得这n+m个雕塑仍然等距,问原来n个雕塑要移动的距离总和的最小值. 原题地址: http://acm.hust.e ...