2

scpC を使用する環境でorをsftpコピーする最良の方法は何でしょうかunix。使用するのに最適なライブラリと、可能であれば例を知りたいです。solaris serverをインストールした状態で作業していsun toolsます。

4

5 に答える 5

4

Libcurl を試す

libcurl は無料で使いやすいクライアント側 URL 転送ライブラリで、DICT、FILE、> FTP、FTPS、Gopher、HTTP、HTTPS、IMAP、IMAPS、LDAP、LDAPS、POP3、POP3S、RTMP、RTSP、SCP をサポートしています。 、SFTP、SMTP、SMTPS、Telnet、および TFTP。libcurl は、SSL 証明書、HTTP POST、HTTP PUT、FTP アップロード、HTTP フォーム ベースのアップロード、プロキシ、Cookie、ユーザー + パスワード認証 (Basic、Digest、NTLM、Negotiate、Kerberos)、ファイル転送再開、HTTP プロキシ トンネリングなどをサポートしています!

libcurl は移植性が高く、Solaris、NetBSD、FreeBSD、OpenBSD、Darwin、HPUX、IRIX、AIX、Tru64、Linux、UnixWare、HURD、Windows、Amiga、OS/2、BeOs、Mac など、多数のプラットフォームで同じようにビルドおよび動作します。 OS X、Ultrix、QNX、OpenVMS、RISC OS、Novell NetWare、DOS など...

于 2013-07-03T23:08:50.033 に答える
0

以前は、ファイル転送コードを含むシェル スクリプトを呼び出すだけでした。

int transferFile()
{
  //declare the transfer command
  char transferCommand[50] = "/home/tyler/transferFile.shl";
  //execute the command
  return system(transferCommand);
}

転送コマンドが正常に返された場合、これは 1 を返します。

于 2008-09-03T22:00:02.487 に答える
0

私は C の専門家ではありませんが、system() を使用して OS コマンドを実行できると思います。これは、実際には scp を再実装する必要はなく、そのまま使用することを前提としています。

于 2008-09-03T22:04:30.480 に答える
0

私はいつも system() コマンドを使用してきました。もちろん、これを行うには、パスワードの入力を求められないように、クライアントとターゲット マシンの間に ssh キーが適切にインストールされている必要があります。

于 2008-09-03T22:30:23.850 に答える