java 写一个将本机的一个文件夹传输到另外一台服务器中,并创建一个新的特殊的文件夹,来存储该文件夹
时间: 2023-05-12 09:03:38 浏览: 67
的副本,你可以使用 SCP 命令来实现这个功能,具体的命令如下:
scp -r /path/to/local/folder username@remote:/path/to/remote/folder
其中,/path/to/local/folder 是本地文件夹的路径,username 是远程服务器的用户名,remote 是远程服务器的 IP 地址或域名,/path/to/remote/folder 是远程服务器上存储副本的文件夹路径。使用 -r 参数可以递归地复制整个文件夹。
相关问题
java 写一个将本机的一个文件夹传输到另外一台服务器中
可以使用 Java 的 Socket 编程来实现将本机的一个文件夹传输到另外一台服务器中。具体实现可以参考以下步骤:
1. 在本机上创建一个 ServerSocket,指定一个端口号,等待另外一台服务器的连接。
2. 在另外一台服务器上创建一个 Socket,指定本机的 IP 地址和端口号,连接到本机的 ServerSocket。
3. 在本机上读取要传输的文件夹,将文件夹中的所有文件和子文件夹递归地打包成一个压缩文件。
4. 将压缩文件通过 Socket 发送到另外一台服务器。
5. 在另外一台服务器上接收压缩文件,并解压缩到指定的目录中。
具体实现细节可以参考 Java 的 Socket 编程相关文档和示例代码。
用java scp写一个 将本机的文件夹传到另外一台服务器上并创建文件夹,不是传输文件
可以使用以下代码实现:
```
import com.jcraft.jsch.*;
public class ScpTransfer {
public static void main(String[] args) {
String user = "username";
String password = "password";
String host = "remote.host.com";
int port = 22;
String localFolder = "/path/to/local/folder";
String remoteFolder = "/path/to/remote/folder";
JSch jsch = new JSch();
Session session = null;
try {
session = jsch.getSession(user, host, port);
session.setConfig("StrictHostKeyChecking", "no");
session.setPassword(password);
session.connect();
Channel channel = session.openChannel("sftp");
channel.connect();
ChannelSftp sftpChannel = (ChannelSftp) channel;
sftpChannel.mkdir(remoteFolder);
sftpChannel.put(localFolder + "/*", remoteFolder);
sftpChannel.exit();
session.disconnect();
} catch (JSchException | SftpException e) {
e.printStackTrace();
}
}
}
```
这段代码使用 JSch 库连接到远程服务器,创建远程文件夹并将本地文件夹中的所有文件传输到远程文件夹中。
阅读全文