📅  最后修改于: 2023-12-03 14:50:42.966000             🧑  作者: Mango
在开发过程中,我们经常需要将本地计算机上的文件上传到一个远程服务器,这时候,ssh命令便成为了一种非常便捷的方式。本篇文章将介绍在命令行下使用ssh上传文件的基本操作。
在使用ssh上传文件前,需要满足以下的前置条件:
上传文件的命令语法如下:
scp [options] local_file remote_user@remote_ip:remote_folder
其中,scp
是上传文件的命令,[options]
是可选参数,local_file
是本地计算机上需要上传的文件路径,remote_user
是远程服务器的用户名,remote_ip
是远程服务器的IP地址,remote_folder
是远程服务器上的目标文件夹路径。
scp
命令有很多可选参数,主要包括以下几个:
-P
指定远程服务器的端口号,默认为22;-r
递归传输文件夹;-v
显示上传进度。下面将通过一个示例来演示如何使用ssh上传文件。
我们假设本地计算机上有一个文件/home/user/test.txt
,需要把它上传到远程服务器192.168.1.100
的/var/www/
目录下。
上传命令如下:
scp /home/user/test.txt remote_user@192.168.1.100:/var/www/
这条命令表示上传/home/user/test.txt
文件到远程服务器192.168.1.100
的/var/www/
目录下,如果需要输入密码,则会提示输入密码。
如果希望在上传过程中显示上传进度,可以在命令后面加上-v
参数:
scp -v /home/user/test.txt remote_user@192.168.1.100:/var/www/
上传进度会像下面这样显示:
Sending file modes: C0777 18 test.txt
Sink: C0777 18 test.txt
test.txt 100% 18 0.2KB/s 00:00
如果需要上传一个文件夹,可以添加-r
参数:
scp -r /home/user/dir remote_user@192.168.1.100:/var/www/
这条命令表示上传/home/user/dir
文件夹到远程服务器192.168.1.100
的/var/www/
目录下。
使用ssh上传文件是一个非常方便的操作,可以帮助我们在开发过程中快速地将本地文件上传到远程服务器,提高开发效率。同时,在上传过程中,我们还可以通过参数来控制上传过程,保证上传结果与预期一致。