这是一个非常常见的困惑点,因为FTP客户端默认显示和操作的是远程服务器的目录,要操作你自己电脑(本地)的目录,需要使用特定的命令。

核心概念
- 远程目录: 你当前连接到的FTP服务器上的文件和文件夹,使用
ls,cd,pwd,mkdir等命令进行操作。 - 本地目录: 你自己电脑上的文件和文件夹,使用 ,
lcd,!ls,!dir等命令进行操作。
主要命令
lcd (Local Change Directory) - 最常用
这个命令用于切换你本地的当前工作目录,这是在FTP会话中操作本地文件的关键。
语法:
lcd [本地目录路径]
示例:
-
查看本地当前目录: 在FTP提示符下输入
lcd,它会显示你当前本地所在的目录。
(图片来源网络,侵删)ftp> lcd Local directory now /home/user/Downloads
-
切换本地目录: 假设你想把本地文件上传到服务器的
/public_html/images目录下,而你的本地图片文件在D:\MyProject\Assets,你需要先切换到本地目录。ftp> lcd D:\MyProject\Assets Local directory now D:\MyProject\Assets
-
使用相对路径切换本地目录: 如果你在
/home/user,想进入Documents文件夹:ftp> lcd Documents Local directory now /home/user/Documents
(Bang) - 执行本地Shell命令
在FTP命令前加上一个感叹号 ,可以让你执行本地计算机的命令行(Shell)命令。
语法:
![本地命令]

示例:
-
列出本地目录内容: 在Linux或macOS上,使用
!ls。ftp> !ls file1.txt file2.jpg project_folder
在Windows上,使用
!dir。ftp> !dir ... 2025-10-27 10:00 AM 123 file1.txt 2025-10-27 10:01 AM 45678 file2.jpg ...
-
在本地创建目录:
ftp> !mkdir new_local_folder
-
删除本地文件:
ftp> !rm unwanted_file.txt
!pwd (Print Working Directory - Local)
虽然标准FTP中没有 lpwd 命令,但很多客户端(如Windows的ftp.exe和Linux的ftp)都支持 !pwd 来显示本地当前工作目录的完整路径。
示例:
ftp> !pwd C:\Users\YourUser\Documents
实战场景:上传一个文件夹
假设你的本地文件结构如下:
D:\MyProject\
└── website_files/
├── index.html
└── images/
└── logo.png
你想把整个 website_files 文件夹上传到服务器的 /var/www/ 目录下。
操作步骤:
-
连接到FTP服务器
ftp ftp.yourserver.com
输入用户名和密码。
-
确保在远程服务器的正确目录
ftp> cd /var/www 250 Directory changed to /var/www
-
切换到你的本地目标目录 注意,我们要切换到
website_files的上一级目录,因为mput或mirror命令会从当前目录开始操作。ftp> lcd D:\MyProject Local directory now D:\MyProject
-
上传文件夹
-
方法一: 使用
mput(适用于单个文件或已知文件名)mput会提示你确认每个文件,可以使用prompt命令关闭交互式提示。ftp> prompt # 关闭交互提示 ftp> mput website_files/*
-
方法二: 使用
mirror(强烈推荐,用于同步整个目录树)mirror命令非常强大,可以递归地上传整个目录结构。ftp> mirror website_files /var/www/website_files
-
常见问题与总结
| 命令 | 全称 | 作用 | 示例 |
|---|---|---|---|
lcd |
Local Change Directory | 切换本地工作目录 | lcd /path/to/my/files |
!ls |
List (local) | 列出本地目录内容 (Linux/macOS) | !ls |
!dir |
Directory (local) | 列出本地目录内容 (Windows) | !dir |
!pwd |
Print Working Directory (local) | 显示本地当前完整路径 | !pwd |
!mkdir |
Make Directory (local) | 在本地创建目录 | !mkdir new_folder |
!rm |
Remove (local) | 在本地删除文件 | !rm file.txt |
!del |
Delete (local) | 在本地删除文件 (Windows) | !del file.txt |
核心要点:
- 默认操作的是远程:
ls,cd,get,put等命令都是针对服务器的。 lcd是本地路径的“导航”:在使用put或mput之前,先用lcd切换到本地文件所在的目录,会让你操作起来更方便。- 是本地命令的“入口”:当你想执行像
ls,mkdir这种本机命令时,记得在前面加上 。
希望这个详细的解释能帮助你更好地理解和使用FTP命令来管理本地目录!
