Linux之scp命令的介绍以及命令行输入密码参数执行方法和常见问题解决

Linux之scp命令的介绍以及命令行输入密码参数执行方法和常见问题解决

一、scp命令

scp命令主要用于Linux中不同主机间复制文件和目录。

scp是Linux系统下基于ssh登录进行安全的远程文件拷贝命令。

scp是加密的

二、scp使用方法

2.1、命令格式

scp [参数] [原路径] [目标路径]

命令参数:

-p 保留原文件的修改时间,访问时间和访问权限。

-q 不显示传输进度条。

-r 递归复制整个目录。

-v 详细方式显示输出。

-P port 注意是大写的P, port是指定数据传输用到的端口号

2.2、使用实例

scp命令应用:

1、从本地服务器复制到远程服务器:

(1) 复制文件

scp 本地文件路径 远程服务器用户名@远程IP:远程目录

或者

scp 本地文件路径 远程服务器用户名@远程IP:远程文件

或者

scp 本地文件路径 远程IP:远程目录

或者

scp 本地文件路径 远程IP:远程文件

注:

第1,2个指定了用户名,命令执行后需要输入用户密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名

第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名

(2)复制目录

命令格式:

scp -r 本地目录路径 远程服务器用户名@远程IP:远程路径

或者

scp -r 本地目录路径 远程服务器IP:远程路径

注:

第1个指定了用户名,命令执行后需要输入用户密码;

第2个没有指定用户名,命令执行后需要输入用户名和密码;

三、scp命令行输入带密码的参数【无需在输入scp后还要再输入远程服务器的密码】

使用sshpass命令

命令格式:

sshpass -p 密码 scp -P 端口 源文件 目标文件

例如,当我需要对远程服务器上传文件,在命令行进行执行,并且需要进行后台运行。当执行了sshpass时,并没有启动进程,服务自动停止。

如下所示

Linux之scp命令的介绍以及命令行输入密码参数执行方法和常见问题解决 报错原因:经过查找,发现是因为权限问题,因为在进行远程上传文件时,此时因为有些文件的用户权限不一样,导致权限出现问题,无法在该用户下进行远程上传

解决方法:

1、可切换至root权限 sudo -i

2、然后执行命令

sshpass -p 【远程服务器密码】 scp -r 本地目录路径 [email protected]:远程服务器文件路径

如下所示:

Linux之scp命令的介绍以及命令行输入密码参数执行方法和常见问题解决 通过ps 查询进行,发现并没有启动

原因:本地服务器与远程服务器并没有进行远程TCP握手连接

解决方法:

1、首先执行 scp 命令 与远程实现文件上传,建立服务器之间的通信

2、然后再执行sshpass命令,即可实现远程上传,添加&实现后台执行

Linux之scp命令的介绍以及命令行输入密码参数执行方法和常见问题解决 3、然后查询远程服务器是否已经收到该文件

Linux之scp命令的介绍以及命令行输入密码参数执行方法和常见问题解决 发现已经正在上传

成功~~

相关推荐

steam充值方法
365比分官网

steam充值方法

📅 08-21 👁️ 8113
问:常见的美术形式有哪些?分别有什么特点?怎么了解?
纨绔子弟是什么意思呢(“纨绔子弟”中的“纨绔”到底是什么意思呢?)
条目不堪入目
365365bet

条目不堪入目

📅 07-09 👁️ 538
小米手机帐号如何注册
日博365怎么样

小米手机帐号如何注册

📅 09-12 👁️ 3085
欢乐颂2电视剧插曲有哪些?欢乐颂2所有插曲名字盘点
世界杯十二星座球星——巨蟹座
365比分官网

世界杯十二星座球星——巨蟹座

📅 07-04 👁️ 2219
揭秘,为何魏晋时期的名流都喜欢戴头巾
365比分官网

揭秘,为何魏晋时期的名流都喜欢戴头巾

📅 07-16 👁️ 7883
2025年浙江杭州看推拿科哪个医院好
365比分官网

2025年浙江杭州看推拿科哪个医院好

📅 09-08 👁️ 2738