FTP删除非空目录

我连接到一个Unix服务器,并且我正尝试通过FTP删除其中包含多个文件的目录 dir 。如果我使用

ftp> delete dir/*

我明白了

550通配符不明确。

当我使用

ftp> prompt off
Interactive mode off.
ftp> mdelete dir/*

我仍然得到

550通配符不明确。

当我尝试

ftp> glob
Globbing on.
ftp> mdelete dir

我被提示输入每个文件。

如何轻松删除/ emptyAndDelete目录而不会提示每个文件?

/谢谢

27
额外 编辑
意见: 1

6 答案

我分两步工作,一台服务器访问受限,没有SFTP,只有通过命令行的FTP。

喜欢这个 :

mdelete folder_name/*
rmdir folder_name
34
额外
只有当 folder_name 内没有子文件夹时才这样
额外 作者 CJBS,
啊,你说得对。
额外 作者 EcchiOli,

如果您在服务器上隐藏了文件或文件夹(例如.folder),则必须将lftp列表选项设置为“-a”。

所以这对我有效:

$ lftp -u user,pass server
> set ftp:list-options -a
> cd /folder/to/be/empty/
/folder/to/be/empty/> glob -a rm -r *
17
额外
这太糟糕了 lftp 不会将一个文件夹中的所有文件都作为一个请求删除。它似乎为每个单个文件执行一次往返,所以速度很慢。
额外 作者 joeytwiddle,
我最喜欢的答案是,lftp更容易。
额外 作者 Brad F Jacobs,
请参阅Serverfault上的此答案。和lftp -u登录名,密码ftp_server_location -e“rm -r directory_to_delete; exit”
额外 作者 chaserx,

好的,使用lftp登录到你的服务器,这支持“rm -r”命令。

lftp用户,密码服务器

然后:

rm -r目录

“r”代表“递归”。

信息:

12
额外
所以这意味着没有办法用FTP来做到这一点?
额外 作者 JonatanEkstedt,

$ ftp -i ...

会关闭mdel上的提示,这就是你想要的。它不能在ftp中完成。

2
额外
FTP CLI上的 prompt 命令也是一样的。
额外 作者 Alnitak,
你用那个'-i'拯救了我的生命
额外 作者 tester,

rmdir directoryName

但是该目录必须位于当前目录中。

cheatsheet: http://www.cs.colostate.edu/helpdocs/ftp.html

0
额外
“550 dir:目录不为空。”那也行不通。
额外 作者 JonatanEkstedt,

我正在使用Filezilla,并递归删除文件夹。我相信ftp没有递归删除文件夹的命令。

0
额外