C# Class Tamir.SharpSsh.Scp

Class for handling SCP file transfers over SSH connection.
Inheritance: Tamir.SharpSsh.SshTransferProtocolBase
显示文件 Open project: soywiz/csharputils Class Usage Examples

Public Methods

Method Description
Cancel ( ) : void
From ( string remoteFile, string localPath ) : void

Copies a file from a remote SSH machine to the local machine using SCP.

From ( string remoteFile, string localPath, bool _recursive ) : void

Copies a file from a remote SSH machine to the local machine using SCP.

Get ( string fromFilePath, string toFilePath ) : void
Mkdir ( string dir ) : void

Creates a directory on the remot server

Put ( string fromFilePath, string toFilePath ) : void
Scp ( string host, string user ) : System
Scp ( string host, string user, string password ) : System
To ( string localPath, string remotePath ) : void

Copies a file from local machine to a remote SSH machine.

To ( string localPath, string remotePath, bool _recursive ) : void

Copies a file from local machine to a remote SSH machine.

Protected Methods

Method Description
ConnectChannel ( ) : void

This function is empty, so no channel is connected on session connect

SCP_CheckConnectivity ( ) : void

Checks is a channel is already connected by this instance

SCP_ConnectFrom ( Channel &channel, Stream &server, string rfile, bool recursive ) : void

Connect a channel to the remote server using the 'SCP From' command ('scp -f')

SCP_ConnectTo ( Channel &channel, Stream &server, string rfile, bool recursive ) : void

Connect a channel to the remote server using the 'SCP TO' command ('scp -t')

SCP_EnterIntoDir ( Stream server, string dir ) : void

Instructs the remote server to enter into a directory

SCP_EnterIntoParent ( Stream server ) : void

Instructs the remote server to go up one level

SCP_ReceiveFile ( Stream server, string rfile, string lfile, int size ) : void

Transfer a file from the remote server

SCP_SendFile ( Stream server, string src, string dst ) : void

Transfer a file to the remote server

Private Methods

Method Description
SCP_CheckAck ( Stream ins ) : int

Gets server acknowledgment

SCP_SendAck ( Stream server ) : void

Sends acknowledgment to remote server

ToRecursive ( Stream server, string src, string dst ) : void

Copies files and directories from local machine to a remote SSH machine using SCP.

Method Details

Cancel() public method

public Cancel ( ) : void
return void

ConnectChannel() protected method

This function is empty, so no channel is connected on session connect
protected ConnectChannel ( ) : void
return void

From() public method

Copies a file from a remote SSH machine to the local machine using SCP.
public From ( string remoteFile, string localPath ) : void
remoteFile string The remmote file name
localPath string The local destination path
return void

From() public method

Copies a file from a remote SSH machine to the local machine using SCP.
public From ( string remoteFile, string localPath, bool _recursive ) : void
remoteFile string The remmote file name
localPath string The local destination path
_recursive bool Value indicating whether a recursive transfer should take place
return void

Get() public method

public Get ( string fromFilePath, string toFilePath ) : void
fromFilePath string
toFilePath string
return void

Mkdir() public method

Creates a directory on the remot server
public Mkdir ( string dir ) : void
dir string The new directory
return void

Put() public method

public Put ( string fromFilePath, string toFilePath ) : void
fromFilePath string
toFilePath string
return void

SCP_CheckConnectivity() protected method

Checks is a channel is already connected by this instance
protected SCP_CheckConnectivity ( ) : void
return void

SCP_ConnectFrom() protected method

Connect a channel to the remote server using the 'SCP From' command ('scp -f')
protected SCP_ConnectFrom ( Channel &channel, Stream &server, string rfile, bool recursive ) : void
channel Tamir.SharpSsh.jsch.Channel Will contain the new connected channel
server Stream Will contaun the new connected server I/O stream
rfile string The remote path on the server
recursive bool Idicate a recursive scp transfer
return void

SCP_ConnectTo() protected method

Connect a channel to the remote server using the 'SCP TO' command ('scp -t')
protected SCP_ConnectTo ( Channel &channel, Stream &server, string rfile, bool recursive ) : void
channel Tamir.SharpSsh.jsch.Channel Will contain the new connected channel
server Stream Will contaun the new connected server I/O stream
rfile string The remote path on the server
recursive bool Idicate a recursive scp transfer
return void

SCP_EnterIntoDir() protected method

Instructs the remote server to enter into a directory
protected SCP_EnterIntoDir ( Stream server, string dir ) : void
server Stream A connected server I/O stream
dir string
return void

SCP_EnterIntoParent() protected method

Instructs the remote server to go up one level
protected SCP_EnterIntoParent ( Stream server ) : void
server Stream A connected server I/O stream
return void

SCP_ReceiveFile() protected method

Transfer a file from the remote server
protected SCP_ReceiveFile ( Stream server, string rfile, string lfile, int size ) : void
server Stream A connected server I/O stream
rfile string The remote file to copy
lfile string The local destination path
size int
return void

SCP_SendFile() protected method

Transfer a file to the remote server
protected SCP_SendFile ( Stream server, string src, string dst ) : void
server Stream A connected server I/O stream
src string The source file to copy
dst string The remote destination path
return void

Scp() public method

public Scp ( string host, string user ) : System
host string
user string
return System

Scp() public method

public Scp ( string host, string user, string password ) : System
host string
user string
password string
return System

To() public method

Copies a file from local machine to a remote SSH machine.
public To ( string localPath, string remotePath ) : void
localPath string The local file path.
remotePath string The path of the remote file.
return void

To() public method

Copies a file from local machine to a remote SSH machine.
public To ( string localPath, string remotePath, bool _recursive ) : void
localPath string The local file path.
remotePath string The path of the remote file.
_recursive bool
return void