ActiveXperts Network Component Rsh Object
RSh executes a command on a host. The remote hosts must run the RSh daemon. An RSh client utility is shipped with most operating systems these days. This RSh command line utility copies its standard input to the remote command, the standard output of the remote command to its standard output, and the standard error of the remote command to its standard error. Interrupt, quit and terminate signals are propagated to the remote command; rsh normally terminates when the remote command does.
The Network Component RSh object has the same functionality as the RSh command-line utility, except that it has no user interface by itself: standard error and standard output are not copied to the console, but are copied to the corresponding object properties (StdErr and StdOut) instead.
The Rsh object is part of the Network Component. Overview of all Network Component objects:
DnsServer & DnsRecord - Ftp & FtpFile - Http - Icmp - IPtoCountry - Msn - Ntp - Radius - Rsh - Scp - SFtp - Ssh - SnmpManager - SnmpTrapManager - SnmpMibBrowser - Tcp - Tftp - TraceRoute - Udp - Xen - Wake-on-LAN - Xen (Citrix)
Rsh Sample code
Visual Basic .NET sample: Execute a script on a remote LINUX machine using RSH
Imports AxNetwork
Module RShDemo
Sub Main()
Dim objRSh As RSh = New RSh
Dim objConstants As SocketConstants = New SocketConstants
objRSh.Clear()
objRSh.UserName = "root"
objRSh.Host = "192.168.1.10"
objRSh.Command = "/bin/ls"
objRSh.ScriptTimeOut = 5000
Console.WriteLine("Running command...")
objRSh.Run()
Console.WriteLine(" Result:" & objRSh.LastError.ToString())
If (objRSh.LastError = 0) Then
Console.WriteLine("StdErr:" & objRSh.StdErr)
Console.WriteLine("StdOut:" & objRSh.StdOut)
End If
Console.WriteLine("Ready.")
End Sub
End Module
Visual C# .NET sample: Execute a script on a remote LINUX machine using RSH
using System;
using AxNetwork;
namespace RShDemo
{
class RShDemo
{
[STAThread]
static void Main(string[] args)
{
RSh objRSh = new RSh ();
objRSh.Clear();
objRSh.Host = "192.168.1.10";
objRSh.Command = "/bin/ls";
objRSh.ScriptTimeOut = 5000;
Console.WriteLine( "Running command..." );
objRSh.Run();
Console.WriteLine( "Result:"+objRSh.LastError.ToString());
if ( objRSh.LastError == 0 )
{
Console.WriteLine( "StdOut:" + objRSh.StdOut );
}
else
{
Console.WriteLine( "StdErr:" + objRSh.StdErr );
}
Console.WriteLine( "Ready." );
}
}
}
You can download the full samples here.
