一次删除多个文件的 FTP 命令是什么?

一次删除多个文件的 FTP 命令是什么?

我正在尝试通过 FTP 运行此命令以删除我网站文件夹中存储的某些文件:

DEL *.csv

但是这不管用,我也不知道为什么。但是如果我尝试删除每个文件,那么就会成功:

DEL file.csv (works)

我该怎样做才能解决这个问题?

答案1

如果您使用 Windows 命令行 ftp 客户端,那么您将需要使用mdelete来删除多个文件,因为delete只会删除一个文件。

编辑:回答评论中的其他问题。

如果您想将这些命令放在一个文件中,以便可以以某种批处理方式执行它们,您可以创建一个文本文件并按顺序将命令放入其中:

prompt
mdel *
quit

然后您可以使用该参数将其作为单个步骤运行-s

答案2

要使用 mdelete,请使用以下语法来自动化该过程

在 FTP> 使用“prompt”命令禁用交互(模式关闭)

输入此命令:

  • FTP> mdelete [目录] *.extenstion |yes

例如,mdelete standard *.jpg |yes

答案3

对于 Windows 7:

现有的答案只能部分起作用。要一次删除更多文件而无需服务器确认,我们必须使用以下命令连接到服务器:

ftp -i yourwebsite

因此,使用该命令连接后,您可以mdelete在 FTP 提示符下使用:

mdelete *.html

答案4

这是内联多删除 ftp 脚本的示例,附加了算术 YYYYMM 变量。用于prompt禁用交互式提示查询。

#!/bin/sh
## Delete files from FTP server

HOST=11.22.33.44
USER=myuser
PWD="mypwd"

YM=$(date +'%Y%m')
YM=$(( $YM-3 ))
echo YearMonth $YM

ftp -p -n $HOST <<END_SCRIPT
quote USER $USER
quote PASS $PWD
prompt
mdel prefix${YM}*.zip
quit
END_SCRIPT
exit 0

相关内容