服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - linux的sftp复制传输文件方式

linux的sftp复制传输文件方式

2024-06-14 15:50lanmy_dl Linux

这篇文章主要介绍了linux的sftp复制传输文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

linux的sftp复制传输文件

假设要把服务器a的路径xxx下的某文件m内容复制到服务器b去

因为Jumpserver的权限问题,scp不能直接复制,所以使用sftp命令传输

1.进入本地需要复制的文件目录下

cd xx/xxx/

其下是需要复制的文件m

2.连接远程服务器

sftp -P 端口号 用户名@主机

例如:

sftp -P 80 ubuntu@172.168.0.1 并按照提示输入密码

3.分别使用命令查看本地当前路径(Local) 和远程路径(Remote)

  • pwd
  • lpwd

其中lpwd则展示的当前进入的路径xx/xxx/

4.使用 cd 远程路径和 lcd 本地路径分别进入对应目录

如果进入失败要一个一个进,可使用ls查看当前的目录进

5.put -r 文件夹 进行复制put -r m

5个linux文件传输命令

文件传输命令允许你通过网络在系统间移动文件。这对于将文件复制到远程服务器或从互联网下载内容非常有用。

1. scp – 在主机间安全复制文件

scp (安全复制)命令通过 SSH 连接在主机间复制文件。所有数据传输都经过加密,以确保安全。

scp 语法可将文件从源路径复制到定义为 user@host 的目的地:

scp source user@host:destination

例子:

scp image.jpg user@server:/uploads/

这样就能以 user 身份将 image.jpg 复制到 server 上的 /uploads 文件夹。

scp 的工作原理与 cp 命令类似,但用于远程文件传输。它利用 SSH(Secure Shell)进行数据传输,提供加密功能,确保不会在网络上泄露密码等敏感数据。身份验证通常使用 SSH 密钥,但也可以使用密码。文件既可以复制到远程主机,也可以从远程主机复制。

2. rsync – 在主机间同步文件

rsync 工具可在两个位置之间同步文件,同时使用 delta 编码尽量减少数据传输。这使得同步大型目录树的速度更快。

rsync 语法同步源文件到目标文件:

rsync [options] source destination

例子:

rsync -ahv ~/documents user@server:/backups/

上述示例命令将 documents 文件夹递归同步到 server:/backups/,并显示冗长的、人类可读的输出。

有用的 rsync 选项:

  • a – 归档模式递归同步并保留权限、时间等。
  • h – 人类可读输出。
  • v – 冗余输出。

rsync 是将文件和文件夹同步到远程系统并保持分散备份和安全的理想工具。

3. sftp – 安全文件传输程序

sftp 程序通过 SSH 提供交互式文件传输,与普通 FTP 类似,但已加密。它可以在远程系统之间传输文件。

sftp 连接到主机,然后接受以下命令:

sftp user@host
get remotefile localfile (复制远程文件到本地,此时remotefile可以是文件,也可以是文件夹)
put localfile remotefile (把本地文件复制到远程,此时localfile如果是文件夹,前面要加-r)

这样就能从服务器上获取 remotefile ,并将 localfile 复制到远程主机上。

sftp 有一个交互式 shell,用于浏览远程文件系统、传输文件和目录以及管理权限和属性。

4. wget – 从网上检索文件

wget(World Wide Web get)是从互联网检索内容的实用工具。它拥有最大的flags之一。

有用的 wget 选项:

  • c – 恢复中断的下载,如果下载过程中出现连接中断或下载被取消,你可以使用 -c 选项重新启动下载,它会尝试从上次中断的地方继续下载。
  • r – 递归下载,即下载指定 URL 下的所有链接和资源。它非常有用,特别是当你需要下载一个整个网站或某个目录中的文件时。
  • O – 保存到特定文件名,通过指定 -O 选项和文件名,你可以控制下载文件的保存位置和名称。

wget 是编写自动下载脚本和镜像网站的理想工具。

以下是您如何从GitHub获取一个Python文件:

wget https://example.com/cookies.py
#保存为链接尾部名称cookies.py

wget -O myfile.py https://example.com/cookies.py
#保存为myfile.py

5. curl – 从服务器传输数据或向服务器传输数据

curl 命令可使用支持的协议与网络服务器之间传输数据。它支持多种常用协议,包括 HTTP、HTTPS、FTP、FTPS、SCP、SFTP、SMTP、POP3、IMAP、Telnet 和 DICT。

通过 curl,我们可以发送请求,获取网页内容、下载文件,以及执行其他网络操作。

例子:

curl -o example.html https://example.com
#该命令会将 https://example.com 的响应保存为名为 example.html 的文件。

curl -L https://example.com
#该命令会自动跟踪 https://example.com 的重定向,并获取最终的响应内容。

上述命令从 HTTPS URL 获取数据并输出。

有用的 curl 选项:

  • o – 将输出写入文件。
  • I – 仅显示响应头。
  • L – 跟踪重定向。

curl 旨在以编程方式跨网络传输数据。

总结

ps:以上只做粗略介绍,撬开入门的第一块砖,更深入的知识请自行查资料了解。

希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/lanmy_dl/article/details/134277035

延伸 · 阅读

精彩推荐
  • LinuxLinux下如何创建SFTP账号

    Linux下如何创建SFTP账号

    这篇文章主要介绍了Linux下如何创建SFTP账号问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教...

    腐烂的橘子3472024-06-05
  • LinuxPlots:一款适用于 Linux 桌面的数学图形绘图应用

    Plots:一款适用于 Linux 桌面的数学图形绘图应用

    Plots 是一款图形绘图应用,它可以轻松实现数学公式的可视化。你可以用它来绘制任意三角函数、双曲函数、指数函数和对数函数的和与积。 ...

    Linux中国8332021-02-26
  • LinuxRISC-V 新成果,deepin 深度操作系统成功适配 LicheePi 4A 开发板

    RISC-V 新成果,deepin 深度操作系统成功适配 LicheePi 4A 开发板

    8 月 10 日消息,深度操作系统今日宣布,自适配 VisionFive 1、VisionFive 2 、SG2042 等开发板之后,近期 ,deepin RISC-V SIG 在推动 RISC-V 生态过程中又取得了新突破...

    IT之家122023-08-12
  • LinuxLinux(Centos7)下redis5集群搭建和使用说明详解

    Linux(Centos7)下redis5集群搭建和使用说明详解

    这篇文章主要介绍了Linux(Centos7)下redis5集群搭建和使用说明 ,本文通过实例文字代码相结合的形式,给大家介绍的非常详细,具有一定的参考借鉴价值,需要...

    佩奇er6662022-09-07
  • Linuxlinux修改mac地址方法分享

    linux修改mac地址方法分享

    这篇文章主要介绍了linux修改mac地址的方法,Linux下只需要一行指令就可以改变MAC地址,具体看下面的命令使用方法...

    Linux教程网10992021-10-10
  • LinuxLinux 或将移除传统的 IDE 驱动支持

    Linux 或将移除传统的 IDE 驱动支持

    事实上,两年前,这些传统的 IDE 驱动代码就已经弃用,并被标记为将在 2021 年删除。目前, Christoph Hellwig 正在跟进该移除计划。...

    开源中国9142021-03-23
  • LinuxLinux 系统中如何更改 IP 地址

    Linux 系统中如何更改 IP 地址

    目前大多数系统中的 IP 地址都是自动分配的,但是在某些情况下,我们可能需要手动更改。我们今天分享几个修改系统 IP 地址的方法。...

    TIAP10762022-10-14
  • LinuxLinux系统如何使用systemd来管理启动项

    Linux系统如何使用systemd来管理启动项

    最近在设置 Linux 系统时,我想知道如何确保服务和其他单元的依赖关系在这些依赖于它们的服务和单元启动之前就已经启动并运行了。我需要更多 systemd...

    Linux中国6462021-05-18