BSA Network Shell系列-scriptutil命令
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命令的更多相关文章
- BSA Network Shell系列-nexec命令
# nexec ## 1 说明:nexec是远程命令接口引擎 ,用于在远程主机执行命令 nexec [-?] [-t term] [-o] [-i] [-l] [-nohup hostname &qu ...
- BSA Network Shell系列-nsh命令
nsh nsh命令软链接到zsh,直接运行nsh可进入Network Shell,所有的Network Shell命令都需要运行nsh进入Network Shell执行 1 使用cd命令访问远程主机和 ...
- BSA Network Shell系列-redi命令
redi ## 1 功能概述 redi将输出重定向到一个文件中 ## 2 语法 redi [-?] [-a] filename ## 3 使用示例 1 将输出重定向到隐式路径所在主机的/tmp/hah ...
- BSA Network Shell系列-nlogin命令
nlogin 1 说明 nlogin 是一种通过RSCD Agent的通信的安全远程登录,使用和NSH工具相同的加密协议.可以作为telnet.rlogin或者ssh的替代工具(假如这些端口或协议禁用 ...
- BSA Network Shell系列-nexec | runcmd | runscript | scriptutil的异同
说明下nexec.runcmd.runscript.scriptutil的异同 相同点: 四者都可以在远程机器执行命令.或者调用脚本. 不同点: nexec支持NSH命令,可以执行远程机的本地命令(非 ...
- BSA Network Shell系列-runcmd/runscript命令
runcmd和runscript ## 1 功能概述 runcmd/runscript:runcmd在一台或多台机器执行Network Shell命令(单个命令),而runscript执行的是脚本,二 ...
- BSA Network Shell系列-通过NSH执行Powershell,VBScript或bat files脚本
参考:Running Powershell, VBScript, or bat files via NSH 如果你直接在NSH命令行执行的话,可以参考我翻译的下面的东东,如果想运行NSH 脚本作业的话 ...
- Linux Shell系列教程之(八)Shell printf命令详解
本文是Linux Shell系列教程的第(八)篇,更多shell教程请看:Linux Shell系列教程 在上一篇:Linux Shell系列教程之(七)Shell输出这篇文章中,已经对Shell p ...
- Linux Shell系列教程之(十六) Shell输入输出重定向
本文是Linux Shell系列教程的第(十六)篇,更多Linux Shell教程请看:Linux Shell系列教程 Shell中的输出和输入的重定向是在使用中经常用到的一个功能,非常实用,今天就为 ...
随机推荐
- ADO对SQL Server 2008数据库的基础操作
最近在学习ADO与数据库的相关知识,现在我将自己学到的东西整理写出来,也算是对学习的一种复习. 这篇文章主要说明如何遍历某台机器上所有的数据库服务,遍历某个服务中所有的数据库,遍历数据库中的所有表以及 ...
- PE文件详解(六)
这篇文章转载自小甲鱼的PE文件详解系列原文传送门 之前简单提了一下节表和数据目录表,那么他们有什么区别? 其实这些东西都是人为规定的,一个数据在文件中或者在内存中的位置基本是固定的,通过数据目录表进行 ...
- 关于centos启动报错:Failed to start Crash recovery kernel arming的解决方案
在VMware中安装了centos,重启时报错:Failed to start Crash recovery kernel arming 本质是kdump服务启动失败 先来说一下,什么是kdump K ...
- Python学习九:列表生成式
列表生成式,是Python内置的一种极其强大的生成list的表达式. 如果要生成一个list [1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9] 可以用 range(1 , 10) ...
- 【转载】MySQL5.6.27 Release Note解读(innodb及复制模块)
新功能 问题描述(Bug #18871046, Bug #72811): 主要为了解决一个比较“古老”的MySQL在NUMA架构下的“swap insanity”问题,其表现为尽管为InnoDB ...
- Send Email in .NET Core 2.0
在.NET Core 1.0 中,SMTP Client代码并没有被移植,直到.NET Core 2.0的发布.使用下面的代码: static void Main(string[] args) { S ...
- js测试地址
很多时候,想写js测试代码,比如在学习的时候.看书敲代码,每次打开VS还是很麻烦的.特别是需要加载一些库的时候. 此时有个工具可以解决: https://jsfiddle.net/ 也是在别人的博客里 ...
- Zedboard(一)开发环境Vivado
Vivado是Xilinx(赛灵思)公司出品的开发软件平台,适用于Zedboard开发板. 下面介绍Vivado搭建的过程: 一.注册Xilinx账号.下载安装包 推荐到Xilinx(赛灵思)英文官网 ...
- MySQL中MyISAM 和 InnoDB 的基本区别
有以下5点 1.innodb支持事务,myisam不支持 2.innodb支持mvcc,myisam不支持 3.innodb支持外键,myisam不支持 4.innodb不支持 FULLTEXT类型的 ...
- 图的存储结构的实现(C/C++实现)
存档: #include <stdio.h> #include <stdlib.h> #define maxv 10 #define max 10 typedef char e ...