BSA Network Shell系列-nsh命令
nsh
nsh命令软链接到zsh,直接运行nsh可进入Network Shell,所有的Network Shell命令都需要运行nsh进入Network Shell执行
1 使用cd命令访问远程主机和文件
1.1 使用cd命令访问远程主机
beaver $ cd //otter/etc
otter $ pwd
//otter/etc
otter $ uname -a #查看otter机器的内核信息
Linux otter 2.0.34 #1 Fri May 8 16:05:57 EDT 1998 i586 i386
otter $ vi termcap
1.2 访问远程主机上的文件
beaver $ vi //otter/etc/termcap
1.3 访问多个主机上的文件
beaver $ diff //otter/etc/termcap //duckbill/etc/termcap
2 远程访问windows磁盘
访问windows机器时,不需要指定根盘,如果你的根盘默认是c盘
nsh
unix $ cd //windows//
unix $ pwd
nt $ //windows/c
如果选择其他磁盘,则可以指定
unix $ cd //windows/d
nt $ pwd
nt $ //nt/d
3 目录"//"
"//"是一个虚拟目录,目录下只包含主机信息,实际是各个主机的根节点(/),使用"//"可以切换到其他主机,然后使用相对路径进行文件浏览,如:
host1 $ cd //
host1 $ ls
host1 host2 host3 host4
host1 $ cd host2 #切换到机器host2
host2 $ pwd
//host2/
host2 $ cd //host1/etc
host1 $ pwd
//host1/etc
host1 $ cd ../../host2/etc
host2 $ pwd
//host2/etc
4 执行命令行
通过Network Shell可以执行三类命令:原生命令、等价于Network Shell命令的原生命令、纯Network Shell命令。当执行命令时,会有两种状态:在本机执行或者在远程机。等价于Network Shell命令的原生命令默认两种状态都可以执行,如果你想执行原生命令,那么需要把命令所在的全路径写上,例如:
Host$ /bin/tar -cvf /tmp/etc.tar /etc
4.1 在远程机执行命令行
Network Shell有两种方法可以在远程机上执行命令:默认的"nexec"方法和"remote_cmds"文件方法。默认的"nexec"执行支持ZSH 4.3.4,不支持ZSH 4.0.4,详细参见 nexec的man帮助
当执行的命令在"remote_cmds"文件中时,并且该命令有一个等价的原生命令但位于不同目录,那么系统将执行"remote_cmds"文件中指定路径的那个命令
4.2 使用remote_cmds文件定制remote commands
remote_cmds文件中包含Network Shell支持的命令列表,这个文件位于share目录下,Linux默认安装时的路径为"/u01/bmc/bladelogic/NSH/share"。
要添加remote commands,需要如下两步操作(此次以last命令为例):
1 添加last命令的软连接
在bin路径下添加nexec/u01/bmc/bladelogic/NSH/bin
cd nexec/u01/bmc/bladelogic/NSH/bin
ln -s /u01/bmc/bladelogic/NSH/bin/nexec last
2 修改remote_cmds文件内容
文件有三列构成,每列空三个空格,列对应的内容是:
command_name command_path(可选) max_time(可选)
上面的command_name就是你将来要做nsh中执行的远程命令;command_path是命令所在的绝对路径,此处是/usr/bin/last;max_time指命令执行的最大实际,默认是300s,如果命令执行超时,则会提示错误并放弃执行。所以针对last命令需要如下修改:
echo "last /usr/bin/last -">> /u01/bmc/bladelogic/NSH/share/remote_cmds
5 重定向
重定向在Network Shell中是使用管道来实现的,而不是通常所用的dup()、dup2()的系统调用。当使用重定向的时候有些限制。首先,只支持文件描述符1(标准输出)和2(标准错误),其他文件描述符会导致未知错误。其次,重定向符号<>,被认为是<,而非同时读写。
BSA Network Shell系列-nsh命令的更多相关文章
- BSA Network Shell系列-nexec命令
# nexec ## 1 说明:nexec是远程命令接口引擎 ,用于在远程主机执行命令 nexec [-?] [-t term] [-o] [-i] [-l] [-nohup hostname &qu ...
- BSA Network Shell系列-scriptutil命令
scriptutil ## 1 功能概述 scriptutil复制脚本到远程机的某个目录,然后在该目录执行脚本. 它的优点就是脚本是non-NSH的脚本.不支持NSH命令,执行起来的效果和runscr ...
- 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中的输出和输入的重定向是在使用中经常用到的一个功能,非常实用,今天就为 ...
随机推荐
- 使用腾讯云无服务器云函数(SCF)分析天气数据
欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 作者:李想 无服务器云函数(SCF)是腾讯云提供的Serverless执行环境,也是国内首款FaaS(Function as a Service ...
- C++ 脑筋急转弯
最近重新温习一下C++的基础知识,这里给大家分享一下,独痛苦不如众痛苦. 先贴出一段示例代码如下: class CTest{ public: CTest(){ ); }; ~CTest(){ if ( ...
- navicat for sqlite 11.1.12 patch 永久试用 不报毒
因为最近需要用这个但是网上都是注册机没有成功注册,所以就自己动手使用ollydbg开刀, 修改成了永久试用版本. 着急用所以没仔细分析,暂时先这样吧. 这个下载版本 http://dlsw.ba ...
- 利用JParticles制作粒子
JParticles 2.0发布,打造炫酷的粒子 一. 介绍 JParticles 2.0发布之前叫Particleground.js, 相信有在用的朋友应该不会陌生, 关于1.x的介绍可以看这里 二 ...
- Python源码剖析之准备工作
一个Python程序开发者, 也是C语言爱好者, 为了加强自己对Python语言实现的理解, 最近选择阅读下陈儒老师的书, 对Python3.5.1源码进行阅读, 再次记录下读书笔记. 一.Pyth ...
- Kubernetes 架构(下)- 每天5分钟玩转 Docker 容器技术(121)
上一节我们讨论了 Kubernetes 架构 Master 上运行的服务,本节讨论 Node 节点. Node 是 Pod 运行的地方,Kubernetes 支持 Docker.rkt 等容器 Run ...
- 12、ABPZero系列教程之拼多多卖家工具 拼团提醒功能登录拼多多实现
上篇文章已经完成了整个拼多多拼团提醒功能,本篇继续完成拼多多帐号登录,拼多多帐号登录的目的是为了获取拼团商品的SKU和订单号,便于商家备货. 以下是拼多多官方的后台登录,要实现的功能并不是直接在这里登 ...
- Java反射-中级知识掌握
PS:本文就Java反射常用的中级知识做下汇总和分析/cnxieyang@163.com/xieyang@e6yun.com
- C/C++中substr函数的应用(简单讲解)
substr(字符串,截取开始位置,截取长度) //返回截取的字 substr('Hello World',0,1) //返回结果为 'H' *从字符串第一个字符开始截取长度为1的字符串 subst ...
- [bzoj3282]Tree (lct)
昨天看了一天的lct..当然幸好最后看懂了(也许吧..) 论善良学长的重要性T_T,老司机带带我! 这题主要是删边的时候还要判断一下..蒟蒻一开始天真的以为存在的边才能删结果吃了一发wa... 事实是 ...