在 Linux 中传输文件文件夹的 10个 scp 命令

article/2025/6/18 14:23:23

转自:入门小站

scp 命令的基本语法

下面的命令将读作 copy source_file_name 进入 destination_folder 在 destination_host 使用 username account 。

> scp source_file_name username@destination_host:destination_folder

里面有很多参数 scp 你可以使用的命令。以下是可能在日常使用中使用的参数。

使用 -v 参数提供 scp 进程的详细信息

基础的 scp 不带参数的命令将在后台复制文件。除非该过程完成或出现某些错误,否则用户将看不到任何内容。

你可以使用 -v 参数将调试信息打印到屏幕中。它可以帮助你调试连接、身份验证和配置问题。

rumenz@ local$ scp -v Label.pdf rumenz@192.168.1.110:.

输出

复制文件时 scp 显示进度

Executing: program /usr/bin/ssh host 202.x.x.x, user mrarianto, commandscp -v -t .

OpenSSH_6.0p1 Debian-3, OpenSSL 1.0.1c 10 May 2012

debug1: Reading configuration data /etc/ssh/ssh_config

debug1: /etc/ssh/ssh_config line 19: Applying options for*

debug1: Connecting to 202.x.x.x [202.x.x.x] port 22.

debug1: Connection established.

debug1: Host '202.x.x.x'is known and matches the RSA host key.

debug1: Found key in/home/pungki/.ssh/known_hosts:1

debug1: ssh_rsa_verify: signature correct

debug1: Next authentication method: password

rumenz@202.x.x.x 's password:

debug1: Authentication succeeded (password).

Authenticated to 202.x.x.x ([202.x.x.x]:22).

Sending file modes: C0770 3760348 Label.pdf

Sink: C0770 3760348 Label.pdf

Label.pdf 100% 3672KB 136.0KB/s 00:27

Transferred: sent 3766304, received 3000 bytes, in 65.2 seconds

Bytes per second: sent 57766.4, received 46.0

debug1: Exit status 0

提供原始文件的修改时间、访问时间和模式

-p 参数将帮助你解决这个问题。估计时间和连接速度将出现在屏幕上。

rumenz@ local$ scp -p Label.pdf rumenz@192.168.1.110:.

输出

scp 估计复制大文件所需的时间

> rumenz@202.x.x.x 's password:

Label.pdf 100% 3672KB 126.6KB/s 00:29

使用 -C 参数加快文件传输速度

可以加快文件传输速度的参数之一是 -C 范围。这 -C 参数将随时随地压缩你的文件,独特的是压缩只发生在网络中。当文件到达目标服务器时,它将恢复到压缩前的原始大小。

> rumenz@ local$ scp -pv messages.log rumenz@192.168.1.110:.

输出

scp 在不压缩的情况下传输文件

Executing: program /usr/bin/ssh host 202.x.x.x, user mrarianto, commandscp -v -p -t .

OpenSSH_6.0p1 Debian-3, OpenSSL 1.0.1c 10 May 2012

debug1: Reading configuration data /etc/ssh/ssh_config

debug1: /etc/ssh/ssh_config line 19: Applying options for*

debug1: Connecting to 202.x.x.x [202.x.x.x] port 22.

debug1: Connection established.

debug1: identity file /home/pungki/.ssh/id_rsa type-1

debug1: Found key in/home/pungki/.ssh/known_hosts:1

debug1: ssh_rsa_verify: signature correct

debug1: Trying private key: /home/pungki/.ssh/id_rsa

debug1: Next authentication method: password

rumenz@202.x.x.x 's password:

debug1: Authentication succeeded (password).

Authenticated to 202.x.x.x ([202.x.x.x]:22).

debug1: Sending command: scp -v -p -t .

File mtime 1323853868 atime 1380425711

Sending file timestamps: T1323853868 0 1380425711 0

messages.log 100% 93MB 58.6KB/s 27:05

Transferred: sent 97614832, received 25976 bytes, in 1661.3 seconds

Bytes per second: sent 58758.4, received 15.6

debug1: Exit status 0

-C 允许压缩

rumenz@ local$ scp -Cpv messages.log rumenz@192.168.1.110:.

输出

scp 使用压缩更快地传输文件

Executing: program /usr/bin/ssh host 202.x.x.x, user mrarianto, commandscp -v -p -t .

OpenSSH_6.0p1 Debian-3, OpenSSL 1.0.1c 10 May 2012

debug1: Reading configuration data /etc/ssh/ssh_config

debug1: /etc/ssh/ssh_config line 19: Applying options for*

debug1: Connecting to 202.x.x.x [202.x.x.x] port 22.

debug1: Connection established.

debug1: identity file /home/pungki/.ssh/id_rsa type-1

debug1: Host '202.x.x.x'is known and matches the RSA host key.

debug1: Found key in/home/pungki/.ssh/known_hosts:1

debug1: ssh_rsa_verify: signature correct

debug1: Next authentication method: publickey

debug1: Trying private key: /home/pungki/.ssh/id_rsa

debug1: Next authentication method: password

rumenz@202.x.x.x 's password:

debug1: Enabling compression at level 6.

debug1: Authentication succeeded (password).

Authenticated to 202.x.x.x ([202.x.x.x]:22).

debug1: channel 0: new [client-session]

debug1: Sending command: scp -v -p -t .

File mtime 1323853868 atime 1380428748

Sending file timestamps: T1323853868 0 1380428748 0

Sink: T1323853868 0 1380428748 0

Sending file modes: C0600 97517300 messages.log

messages.log 100% 93MB 602.7KB/s 02:38

Transferred: sent 8905840, received 15768 bytes, in 162.5 seconds

Bytes per second: sent 54813.9, received 97.0

debug1: Exit status 0

debug1: compress outgoing: raw data 97571111, compressed 8806191, factor 0.09

debug1: compress incoming: raw data 7885, compressed 3821, factor 0.48

如果你要通过网络复制大量文件, -C 参数将帮助你减少所需的总时间。

压缩方法不适用于所有文件。当源文件已经被压缩时,就没有什么效果了。文件如 .zip , .rar , pictures , 和 .iso

更改 scp 密码以加密文件

默认情况下 scp 使用 AES-128 来加密文件。如果你想更改为其他密码对其进行加密,你可以使用 -c 范围。看看这个命令。

rumenz@ local$ scp -c 3des Label.pdf rumenz@192.168.1.110:.

rumenz@202.x.x.x 's password:

Label.pdf 100% 3672KB 282.5KB/s 00:13

上面的命令告诉 scp 使用 3des algorithm 来加密文件。请注意此参数使用 -c 不是 -C 。

使用 scp 命令限制带宽使用

另一个可能有用的参数是 -l 范围。这 -l 参数将限制使用的带宽制 。如果你执行自动化脚本来复制大量文件,这将很有用

rumenz@ local$ scp -l 400 Label.pdf rumenz@192.168.1.110:.

rumenz@202.x.x.x 's password:

Label.pdf 100% 3672KB 50.3KB/s 01:13

scp 默认带宽的单位是 Kilobyte/sec ( KB/s )。所以如果你想限制你的带宽 scp 最多只有 50 KB/s ,你需要将其设置为 50 x 8 = 400 .

指定要与 scp 一起使用的特定端口

scp 正在使用端口 22 作为默认端口。但出于安全原因,你可以将端口更改为另一个端口. 例如,我们使用端口 2249 .

rumenz@ local$ scp -P 2249 Label.pdf rumenz@192.168.1.110:.

rumenz@202.x.x.x 's password:

Label.pdf 100% 3672KB 262.3KB/s 00:14

递归复制目录中的文件

有时我们需要复制目录和其中的所有 文件 , 目录 。

rumenz@ local$ scp -r documents rumenz@192.168.1.110:.

rumenz@202.x.x.x 's password:

Label.pdf 100% 3672KB 282.5KB/s 00:13

scp.txt 100% 10KB 9.8KB/s 00:00

复> 制过程完成后,你将在目标服务器上找到一个名为 documents 及其所有文件。文件夹 documents 是自动创建的。

禁用进度表和警告 / 诊断消息rumenz@ local$ scp -q Label.pdf rumenz@192.168.1.110:.

rumenz@202.x.x.x 's password:

rumenz@local $

可以看到,输入密码后,没有关于 scp 进程的信息。该过程完成后,你将再次看到提示。

通过代理使用 scp 复制文件

代理服务器通常用于办公环境。scp 本身没有配置代理。当你的环境使用代理时,你必须告诉scp 与代理进行通信。

例如代理地址是 10.0.96.6 代理端口是 8080 .代理还实现了用户身份验证。首先,你需要创建 ~/.ssh/config 文件

ProxyCommand /usr/bin/corkscrew 10.0.96.6 8080 %h %p ~/.ssh/proxyauth

然后你需要创建文件 ~/.ssh/proxyauth 里面输入。

myusername:mypassword

前提是需要安装 corkscrew

$ apt-get install corkscrew

Centos系统可以用 yum 安装 corkscrew

# yum install corkscrew

由于 ~/.ssh/proxyauth 文件包含你的 username 和 password 以明文格式,请确保该文件只能自己访问。

选择不同的ssh_config 文件

对于经常在公司网络和公共网络之间切换的移动用户来说,总是在scp中更改设置会很痛苦。

场景示例

代理在公司网络中使用,但不在公共网络中使用,并且你定期切换网络。

rumenz@ local$ scp -F /home/pungki/proxy_ssh_config Label.pdf

rumenz@192.168.1.110:.

rumenz@202.x.x.x 's password:

Label.pdf 100% 3672KB 282.5KB/s 00:13

默认情况下 ssh_config 每个用户的文件将被放置在 ~/.ssh/config 。创建一个特定的 ssh_config 具有代理兼容性的文件将更容易在网络之间切换。

当你在公司网络,你可以使用 -F 范围。当你在公共网络上时,你可以不用 -F 参数。

END

官方站点:www.linuxprobe.com

Linux命令大全:www.linuxcool.com

(新群,火热加群中……)


http://www.hkcw.cn/article/wYRkaStLUj.shtml

相关文章

科技创新前沿:Web3在全球发展中的角色

随着数字技术的快速发展,Web3作为新一代互联网技术正逐渐引领着全球科技创新的潮流。本文将深入探讨Web3技术的定义、特点,以及它在全球范围内的应用和未来发展的前景。 1. 引言:Web3技术的定义与演进 Web3是指建立在区块链技术和加密经济学基础之上的新一代互联网技术。与传…

原创三星史无前例大降价,Galaxy S24Ultra突降2934元,2亿像素+钛金属

在手机界,有那么一位巨头,名字响彻全球,它是诺基亚的“接班者”,这就是三星。而三星的旗舰手机系列,那可是每年科技界的一大盛事。如今,三星S24 Ultra重磅登场,这位当代的“机皇”,不仅在配置上达到了一种令人发指的地步,还破天荒地在中国市场“低了个头”,价格比以往…

史上最全MATCH函数教程

MATCH函数是Excel中广泛应用的查找引用函数,除自身具有返回查找数据的相对位置的功能外,MATCH函数还能结合众多的函数,在工作中展现Excel的强大威力,比如著名的INDEX+MATCH组合就能轻松搞定很多VLOOKUP的高级应用案例,可见MATCH函数无疑属于职场办公必备函数。 为了让大家…

腾讯突然宣布:彻底关停!

日前 腾讯课堂发布通知 将于8月1日起 停止所有在线课程的访问服务 将于10月1日停止运营 届时全面停止所有平台服务早在2023年8月24日,腾讯课堂也以同样的方式发布公告,称由于功能与服务调整,其旗下的教培通服务将于2023年9月20日起正式停止提供服务,包括发课、排课、创建直…

喜报!李沧这些学子太牛了!山东各地高考学霸出炉!

6月25日下午,山东2024年高考成绩公布(又是几家欢喜几家忧)。2024年山东高考一分一段表出炉,696分及以上共有50人。目前为止,山东省高考成绩前三名是:第一,枣庄三中潘振邦同学716分;第二,济南莱芜一中韩翔宇同学708分和日照实验高中丁辰同学708分;第三是日照实验高中刘…

原创嘲讽全红婵的记者朱小龙现状:老婆孩子被扒美国籍,工作也快丢了

原标题:朱小龙不当言行引发争议遭批缺乏尊重 引言:朱小龙,曾任南方日报体育记者长达14年,因近期直播中的不当言行备受公众热议。该事件源于其对全红婵的不当评价,全红婵年仅17岁却已摘得两届奥运会女子十米跳台跳水三金。然而,朱小龙在直播中形容全红婵向德国选手展示金牌…

WB结果不理想?可能从蛋白提取开始就错了!

吃饭睡觉跑WB,已成为科研人生活的常态。 有时候忙活大半天,结果条带千奇百怪:微笑线、杂带多、前后两次实验条带不一致、进样口条带粗、上部条带浅但下部条带聚集、条带窄且无带型... 望着面前的废胶,不禁怀疑人生: “到底是哪里开始出了问题?” “难道做好WB真的是玄学?…

目击者口述:看到枪手爬上屋顶时,警察似乎还没反应过来

据英国广播公司(BBC)的采访,一名参加集会的特朗普支持者称,自己曾提前看到枪手并告知警察。该男子表示:“我们可以清楚地看到他拿着步枪,下面地面上到处都是警察,我们说:‘嘿老兄,屋顶上有个人带着步枪’,然后警察的回应像是他们不知道发生了什么事。”

一寸照片的尺寸,一寸证件照电子版怎么弄?

在我们日常生活中,一寸照片因其标准、规范的尺寸而广泛应用于各种正式场合和证件中。那么,你是否清楚一寸照片的具体尺寸是多少?又该如何获取一寸证件照的电子版呢?本文将为你详细解答。一、了解一寸照片的标准尺寸一寸照片的标准尺寸为25mm35mm,即2.5cm3.5cm。在电子照片…

全日制研究生vs非全日制研究生vs在职研究生区别介绍!

全日制研究生、非全日制研究生和在职研究生在多个方面存在显著的区别。 01 全日制研究生 全日制研究生是指符合国家研究生招生规定,通过研究生入学考试或其他国家承认的入学方式,被具有实施研究生教育资格的高等学校或其他教育机构录取,并在基本修业年限或学校规定年限内,全…

日本的盂兰盆节是个什么节日?

❀ 日本的盂兰盆节的由来 日本和中国作为两个地理环境位置比较接近的国家,在历史上有着很多根源相同的文化,而两者的“鬼节”更是一脉相承的。其实,日本的鬼节——“盂兰盆节”,其实就是来自中国的“盂兰盆节”,两者连名称都是一样的,并没有发生改变。虽然两者名称相同,…

8 月 3 日,王宇宙于沈阳中街步行街演绎成名曲,粉丝沸腾

8 月 3 日 19 时,备受瞩目的女歌手王宇宙现身沈阳中街步行街,为广大粉丝带来了一场精彩绝伦的音乐盛宴。王宇宙以其独特的嗓音和深情的演绎,唱响了她的成名歌曲,瞬间点燃了现场的气氛。现场观众们沉浸在她的音乐世界中,随着旋律挥舞着手中的荧光棒,热情欢呼。在演唱过程中…

《特种设备安全监察条例(征求意见稿)》,全文摘录!附对照表

有温度 有深度 有广度 就等你来关注 ▼ ABC安全防失联号-急事大观培训大典 预案大典 制度大典 楼上的按钮里干货不一般,最少成百甚至上千! 正文 ▼ 干货推荐: 全网唯一!可不办会员、立即下载安全资料平台,点击→ 【ABC安全官网】 点我!无条件免费领取800+安全资料! 全网…

怎么将pdf转换成ppt?4个高效率的转换方法

怎么将pdf转换成ppt?毫无疑问pdf已经成为目前职场中正式文件的格式,因为pdf文件具有超强的稳定性,因为PDF格式在各种操作系统(如Windows、Mac、Linux)和设备(包括台式计算机、平板、手机等)上都能轻松打开和浏览。而ppt也是上班族朋友经常需要使用到的文件,我们会使用p…

留学必备的GPA怎么换算?(附加、美、英、澳要求)

GPA即Grade Point Average,平均绩点通常指平均学分绩点。GPA是学校判断申请者是否具有扎实专业知识以及潜在学术能力的基础,可以说是体现申请者学习能力的一个可量化的指标。 所以,GPA堪称留学申请的第一道“门槛”!每年都有很多留学生,由于GPA成绩不高,被心仪的女神校拒…

大V卢克文与日本女演员合影引网友热议,评论区成欢乐海洋

近日,知名大V卢克文在社交平台上晒出了一张与日本女演员的合影,引发了网友们的热烈讨论。照片中,卢克文与日本女演员亲密合影,两人笑容满面,看起来十分开心。然而,这张照片的背后却隐藏着一个意想不到的故事。原来,卢克文此前曾在采访中表示对日本女演员的欣赏,并透露有…

郭沫若简介

郭沫若(1892年11月16日-1978年6月12日),幼名文豹,原名开贞,字鼎堂,号尚武,笔名高汝鸿、麦克昂、易坎人、谷人、爱牟、杜荃、石沱等,后以家乡大渡河和雅河的别称“沫水”和“若水”取名沫若,晚年敬称郭老,男,四川乐山人,客家人,中国现代文学家、剧作家、诗人、历史…

基础标点符号使用规则详解—7.破折号

标点符号,是语文中每天都会用到的最基础、最常见的文字符号。既是最常见的,它也是最容易出错的,一不留神,一句话中标点符号用错,不是扣分,就是句意改变了。 系统地学习标点符号,打牢语文基础,掌握每一个细枝末节对于小学阶段是非常重要的。 破折号 破折号,是标点符号家…

《长安的荔枝》一骑红尘里的笑与悲 小人物的智慧与韧性

杜牧的诗句“一骑红尘妃子笑,无人知是荔枝来”不仅为荔枝增添了传奇色彩,也激发了人们对唐代社会的好奇。近日开播的电视剧《长安的荔枝》改编自马伯庸同名小说,通过讲述一千多年前“职场打工人”的故事,揭示了唐代社会的变迁。在唐代,由于缺乏快捷交通工具和保鲜技术,将…

北京3条地铁新线年内开通!最新进展—

3条地铁新线离通车又近了一步。北京地铁12号线(四季青—东坝北)、3号线一期(东四十条—东坝北)、昌平线南延一期剩余段(西土城—蓟门桥)工程已经全面进入“跑图”阶段,为年内开通试运营奠定基础。 “‘跑图’是指在地铁线路开通运营前,按照列车运行图计划,全线模拟运行…