本文是一份针对 CentOS 7 系统的命令行文件上传全攻略,文章深入讲解了如何利用 SCP 和 SFTP 两种协议,将本地文件安全传输至远程服务器,通过具体的实战指南和命令示例,详细阐述了传输步骤与注意事项,帮助用户轻松掌握高效安全的文件管理技巧。
在 Linux 服务器管理中,使用命令行进行文件传输是一项必备技能,相比于图形化界面(如 FTP 客户端),命令行传输更加高效、稳定,且易于自动化脚本处理。
对于 CentOS 7 系统,最常用的两种命令行上传文件的方法是 SCP 和 SFTP,下面将详细介绍这两种方法的具体用法。
使用 SCP 命令(Secure Copy)
SCP 是基于 SSH 协议在本地主机和远程主机之间复制文件的命令,它非常直接,适合从本地上传单个文件或整个目录到 CentOS 7 服务器。

上传单个文件
基本语法如下:
scp 本地文件路径 远程用户名@远程IP地址:远程保存路径
示例:
假设你要将本地的 test.txt 文件上传到远程服务器 168.1.100 的 /tmp/ 目录下,用户名为 root。
scp /path/to/local/test.txt root@192.168.1.100:/tmp/
执行后,系统会提示输入远程服务器的密码,输入正确后文件即开始传输。
上传整个目录
上传目录时,需要加上 -r (recursive) 参数,表示递归复制。
示例:
上传本地的 my_project 文件夹到远程服务器的 /opt/ 目录。
scp -r /path/to/local/my_project root@192.168.1.100:/opt/
指定端口
CentOS 7 服务器使用了非默认的 SSH 端口(2222),可以使用 -P(大写)参数指定端口:
scp -P 2222 local_file.txt root@192.168.1.100:/remote/path/
使用 SFTP 命令(SSH File Transfer Protocol)
SFTP 提供了一种交互式的文件传输方式,与 SCP 不同,SFTP 允许你在连接后浏览目录、执行本地命令等,操作体验更接近于文件管理器。
连接远程服务器
在终端输入:
sftp 用户名@远程IP地址
sftp root@192.168.1.100
输入密码登录后,你会看到 sftp> 提示符。
常用上传命令
在 sftp> 提示符下,使用 put 命令上传文件:
-
上传单个文件:
sftp> put local_filename
也可以指定远程路径:
sftp> put local_filename remote_filename
-
上传整个目录:
sftp> put -r local_directory
目录切换与查看
- 查看远程当前目录内容:
sftp> ls
- 切换远程目录:
sftp> cd /var/www/html
- 查看本地当前目录内容:
sftp> lpwd
- 切换本地目录:
sftp> lcd /Users/username/Downloads
在 SFTP 中执行本地命令
SFTP 支持在远程会话中直接执行本地 shell 命令,使用 -l 参数:
sftp> !ls -l
这会列出你本地电脑
文章版权声明:除非注明,否则均为xmsdn原创文章,转载或复制请以超链接形式并注明出处。

