Linux SFTP(SSH File Transfer Protocol)是一种安全的文件传输协议,它通过SSH(Secure Shell)连接提供加密的数据传输功能,确保文件在传输过程中不会被窃听或篡改,相比于传统的FTP协议,SFTP凭借其安全性和便捷性,成为Linux系统中管理远程文件的首选工具,本文将详细介绍Linux SFTP命令的使用方法,包括连接、文件传输、目录管理及权限设置等核心功能。

连接与登录SFTP服务器
使用SFTP连接远程服务器时,需通过sftp命令结合用户名和主机地址实现,基本语法为:
sftp username@hostname
连接到IP为192.168.1.100的远程服务器(用户名为admin):
sftp admin@192.168.1.100
首次连接时,系统会提示保存远程主机的密钥指纹(输入yes确认),成功登录后,将进入SFTP命令行界面,提示符为sftp>。
若需指定端口(如2222),可通过-P参数添加:
sftp -P 2222 admin@192.168.1.100
文件传输操作
SFTP支持本地与远程服务器之间的双向文件传输,常用命令如下:
上传文件
put local_file:上传单个文件到远程服务器当前目录。sftp> put /home/local.txt
put -r local_dir:上传整个目录(需添加-r递归参数)。mput *.txt:批量上传所有.txt文件(mput支持通配符)。
下载文件
get remote_file:下载远程服务器文件到本地当前目录。sftp> get remote.txt
get -r remote_dir:下载整个目录。mget *.log:批量下载所有.log文件。
传输进度与状态
传输过程中可通过progress命令开启实时进度显示:

sftp> progress
再次输入progress可关闭该功能。
目录与文件管理
SFTP提供了类似Linux Shell的目录操作命令,便于管理远程文件系统:
目录操作
| 命令 | 功能描述 | 示例 |
|---|---|---|
cd remote_dir |
切换远程服务器目录 | sftp> cd /var/log |
lcd local_dir |
切换本地目录 | sftp> lcd /home/user |
pwd |
查看当前远程目录路径 | sftp> pwd |
lpwd |
查看当前本地目录路径 | sftp> lpwd |
mkdir dir_name |
创建远程目录 | sftp> mkdir backup |
rmdir dir_name |
删除空远程目录 | sftp> rmdir temp |
文件操作
ls:列出远程服务器当前目录文件(支持-l显示详细信息)。lls:列出本地当前目录文件。rm remote_file:删除远程文件。rename old_name new_name:重命名远程文件。
权限与高级设置
文件权限修改
通过chmod命令可调整远程文件权限,格式与Linux一致:
sftp> chmod 755 script.sh
所有者修改
使用chown命令修改文件所有者(需sudo权限):
sftp> chown user:group file.txt
传输模式设置
默认情况下,SFTP使用二进制模式传输文件,适合所有类型,若需强制ASCII模式(如传输文本文件),可通过以下命令切换:
sftp> ascii
切换回二进制模式:

sftp> binary
退出与断点续传
完成操作后,通过exit或bye命令退出SFTP会话:
sftp> exit
若传输过程中因网络中断导致任务失败,可结合rsync实现断点续传,重新执行put或get命令时,SFTP会自动检测未完成的传输并继续。
实用技巧与注意事项
- 批量操作:使用
mget和mput时,可通过prompt命令关闭交互式确认(默认开启),实现全自动传输:sftp> prompt off
- 脚本化传输:通过
-b参数指定脚本文件,实现自动化文件传输:sftp -b batch_script.txt admin@192.168.1.100
其中
batch_script.txt包含多行SFTP命令(如put file1.txt、get file2.txt)。 - 安全性建议:
- 避免使用root用户直接登录SFTP,限制普通用户的传输目录(通过SSH配置文件
/etc/ssh/sshd_config中的ChrootDirectory实现)。 - 定期更新SSH服务,防止漏洞利用。
- 避免使用root用户直接登录SFTP,限制普通用户的传输目录(通过SSH配置文件
通过掌握上述SFTP命令,用户可以高效、安全地管理远程文件传输,满足日常运维与开发需求,无论是简单的文件备份还是复杂的数据同步,SFTP都能提供稳定可靠的解决方案。




















