linux scp 传文件 上传 下载 远程 本地

2024-05-31 12:18

本文主要是介绍linux scp 传文件 上传 下载 远程 本地,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 在公司的生产环境,有时候会遇到要在堡垒机上操作,这时候就没法使用secureCRTMobaXterm客户端上传下载了,通常使用scp

scp命令

#把本地的nginx.conf文件拷贝到192.168.0.10机器上的/home/nginx目录下
scp /home/nginx/nginx.conf root@192.168.0.10:/home/nginx/   #把192.168.0.10机器上的nginx.conft文件拷贝到本地的/home/work目录下
scp root@192.168.0.10:/home/nginx/nginx.conf /home/nginx/   #把192.168.0.10机器上的nginx.conf文件拷贝到192.168.0.11机器的/home/work目录下
scp root@192.168.0.10:/home/nginx/nginx.conf work@192.168.0.11:/home/nginx/   #拷贝文件夹,加-r参数
scp -r /home/nginx/srcdir root@192.168.0.10:/home/nginx/   

格式: 

#将本地复制到远程
scp file username@ip:file 
或者 
scp file ip:file#第1个指定了用户,执行命令后需要再输入密码。
#第2个没有指定用户,执行命令后需要再输入用户和密码。 

指定端口:

如果远程服务器给scp命令设置了指定的端口,需要使用 -P 参数来设置端口号:

scp -P 23333 remote@192.168.10.3:/home/nginx/nginx.conf /home/nginx

参考 

Linux scp命令 | 菜鸟教程 (runoob.com)

从Linux服务器下载文件夹到本地

不建议用 sz 来处理文件:它需要终端,例如 xshell 。

推荐方案:scp 或者 sftp。这两种方案是走 ssh。

  1. exit 退出服务器登录

  2. scp 用户名@服务器地址:文件路径 ~/Downloads(本地路径) 来实现下载

  3. 如果是 windows ,可以用 winscp ,管理文件很方便

一般来说,linux服务器大多是通过ssh客户端来进行远程的登陆和管理的,使用ssh登陆linux主机以后,如何能够快速的和本地机器进行文件的交互呢,也就是上传和下载文件到服务器和本地;
   与ssh有关的两个命令可以提供很方便的操作:
   sz:将选定的文件发送(send)到本地机器
   rz:运行该命令会弹出一个文件选择窗口,从本地选择文件上传到服务器(receive)

rz,sz是便是Linux/Unix同Windows进行ZModem文件传输的命令行工具

windows端需要支持ZModem的telnet/ssh客户端(比如SecureCRT)

运行命令rz,即是接收文件,SecureCRT就会弹出文件选择对话框,选好文件之后关闭对话框,文件就会上传到当前目录

注意:单独用rz会有两个问题:上传中断、上传文件变化(md5不同),解决办法是上传是用rz -be,并且去掉弹出的对话框中“Upload files as ASCII”前的勾选。
-b binary 用binary的方式上传下载,不解释字符为ascii
-e 强制escape 所有控制字符,比如Ctrl+x,DEL等

运行命令sz file1 file2就是发文件到windows上(保存的目录是可以配置) 比ftp命令方便多了,而且服务器不用再开FTP服务了

PS:Linux上rz/sz这两个小工具安装lrzsz-x.x.xx.rpm即可。

当然,还可以设置一下目录了:

在SecureCRT设置一下上传和下载的默认目录
options–>session options–>file transfer 下可以设置上传和下载的目录
剩下的你只要在用SecureCRT登陆linux终端的时候:
发送文件到客户端:sz filename
zmodem接收可以自行启动.
从客户端上传文件到linux服务端:
只要服务端执行 : rz
然后在 SecureCRT 里选文件发送,协议 zmodem

----------------
Linux下和Windows之间的文件传输工具rz/sz(lrz/lsz) 介绍

【什么是rz/sz (lsz/lrz)】

简单说就是,可以很方便地用这两个sz/rz工具,实现Linux下和Windows之间的文件传输(发送和接收),速度大概为10KB/s,适合中小文件。rz/sz 通过Zmodem协议传输数据。

【为什么要用rz/sz】

普 通Linux和Windows之间的文件共享方法,主要有建立nfs实现文件共享,和tftp之类的方法,但是都很麻烦,而如果只是小文件(几十 K,几百K),那么直接用rz/sz,就显得极其地方便了。大文件的话,还是要考虑上面说得,其他的共享方法了,毕竟,rz/sz速度只有10K左右,传 大文件会累死人的。。。

【如何使用】

(1)在Windows下,用SecureCRT(或者Windows自带的超级终端)连接Com端口到开发板,或者ssh等协议连接到Linux服务器上。

(2)在Linux端,安装了rz/sz (lrz/lsz)工具后(嵌入式开发中,多数已经将编译好的rz/sz工具放到rootfs中了,普通的Linux系统,如果没有,可以下载源码,自己安装),就可以直接运行rz/sz,实现和Windows之间的文件传输了:

A、从windows中拷贝/下载文件到Linux(开发板):

运行rz后,会自动弹出WIndows下的文件选择对话框,选择对应文件后,添加,然后确定,就开始传输,将windows中的文件,拷贝到Linux中了。

B、将Linux中的文件拷贝到Windows中某个文件夹:

执行sz file_name 就可以将Linux当前文件夹下的文件file_name拷贝到Windows的对应目录中了,其中,Windows目录是由你当前运行的工具中设定的。

此处我用的是SecureCRT,具体的更改 rz上传/sz下载 的默认的路径的方法:

右键点击当前会话session -> Session Options -> Terminal -> Xmodem/Zmodem ->Directories :

Upload : 你要设置的路径

Download:你要设置的路径

如果要下载目录,只能先tar,在下载tar文件。把/home目录下包括它的子目录全部做备份文件,并进行压缩,备份文件名为usr.tar.gz,并且排除/home/htdocs目录$ tar czvf usr.tar.gz /home --exclude=/home/htdocstar命令详解:http://blog.chinaunix.net/uid-20648927-id-1907293.html

这篇关于linux scp 传文件 上传 下载 远程 本地的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1017904

相关文章

使用Spring Cache本地缓存示例代码

《使用SpringCache本地缓存示例代码》缓存是提高应用程序性能的重要手段,通过将频繁访问的数据存储在内存中,可以减少数据库访问次数,从而加速数据读取,:本文主要介绍使用SpringCac... 目录一、Spring Cache简介核心特点:二、基础配置1. 添加依赖2. 启用缓存3. 缓存配置方案方案

Mac电脑如何通过 IntelliJ IDEA 远程连接 MySQL

《Mac电脑如何通过IntelliJIDEA远程连接MySQL》本文详解Mac通过IntelliJIDEA远程连接MySQL的步骤,本文通过图文并茂的形式给大家介绍的非常详细,感兴趣的朋友跟... 目录MAC电脑通过 IntelliJ IDEA 远程连接 mysql 的详细教程一、前缀条件确认二、打开 ID

Linux实现查看某一端口是否开放

《Linux实现查看某一端口是否开放》文章介绍了三种检查端口6379是否开放的方法:通过lsof查看进程占用,用netstat区分TCP/UDP监听状态,以及用telnet测试远程连接可达性... 目录1、使用lsof 命令来查看端口是否开放2、使用netstat 命令来查看端口是否开放3、使用telnet

Linux系统管理与进程任务管理方式

《Linux系统管理与进程任务管理方式》本文系统讲解Linux管理核心技能,涵盖引导流程、服务控制(Systemd与GRUB2)、进程管理(前台/后台运行、工具使用)、计划任务(at/cron)及常用... 目录引言一、linux系统引导过程与服务控制1.1 系统引导的五个关键阶段1.2 GRUB2的进化优

使用Java读取本地文件并转换为MultipartFile对象的方法

《使用Java读取本地文件并转换为MultipartFile对象的方法》在许多JavaWeb应用中,我们经常会遇到将本地文件上传至服务器或其他系统的需求,在这种场景下,MultipartFile对象非... 目录1. 基本需求2. 自定义 MultipartFile 类3. 实现代码4. 代码解析5. 自定

Python多线程实现大文件快速下载的代码实现

《Python多线程实现大文件快速下载的代码实现》在互联网时代,文件下载是日常操作之一,尤其是大文件,然而,网络条件不稳定或带宽有限时,下载速度会变得很慢,本文将介绍如何使用Python实现多线程下载... 目录引言一、多线程下载原理二、python实现多线程下载代码说明:三、实战案例四、注意事项五、总结引

Java实现本地缓存的四种方法实现与对比

《Java实现本地缓存的四种方法实现与对比》本地缓存的优点就是速度非常快,没有网络消耗,本地缓存比如caffine,guavacache这些都是比较常用的,下面我们来看看这四种缓存的具体实现吧... 目录1、HashMap2、Guava Cache3、Caffeine4、Encache本地缓存比如 caff

Linux查询服务器 IP 地址的命令详解

《Linux查询服务器IP地址的命令详解》在服务器管理和网络运维中,快速准确地获取服务器的IP地址是一项基本但至关重要的技能,下面我们来看看Linux中查询服务器IP的相关命令使用吧... 目录一、hostname 命令:简单高效的 IP 查询工具命令详解实际应用技巧注意事项二、ip 命令:新一代网络配置全

linux安装、更新、卸载anaconda实践

《linux安装、更新、卸载anaconda实践》Anaconda是基于conda的科学计算环境,集成1400+包及依赖,安装需下载脚本、接受协议、设置路径、配置环境变量,更新与卸载通过conda命令... 目录随意找一个目录下载安装脚本检查许可证协议,ENTER就可以安装完毕之后激活anaconda安装更

Linux查询服务器系统版本号的多种方法

《Linux查询服务器系统版本号的多种方法》在Linux系统管理和维护工作中,了解当前操作系统的版本信息是最基础也是最重要的操作之一,系统版本不仅关系到软件兼容性、安全更新策略,还直接影响到故障排查和... 目录一、引言:系统版本查询的重要性二、基础命令解析:cat /etc/Centos-release详