vsftpd 中没有目录的 NLST 结果

vsftpd 中没有目录的 NLST 结果

VSFTPD 中是否有一个配置,NLST <dir>只发送回filename而不发送<dir>/<filename>

ftp> nlist OUT
227 Entering Passive Mode (149,202,207,54,212,185).
150 Here comes the directory listing.
OUT/M41_RIC_20210210093105645.CSV
OUT/M41_RIC_20210211095039186.CSV
OUT/M51_RIC_T19048_115_26102020_20201028114231.csv
226 Directory send OK.

谢谢

亚历克斯

答案1

在 vsftpd 中,输出中的名称NLST始终相对于当前工作目录。

我认为这样做的目的是,FTP 客户端可以NLST path在执行类似客户端命令时使用输出mget path。它可以简单地RETR filepath对返回的每一行执行操作NLST,而无需尝试理解远程路径的语义。

您在评论中反对 Microsoft IIS 不会在NLST <dir>结果中返回路径。确实不会。因此,ftp.exe当您从 IIS 子文件夹下载文件时,Microsoft 自身也会失败。有趣的是,IIS 会返回路径。因此,反对 IIS 是可行的。mget <dir>NLST <dir>/<subdir>mget <dir>/<subdir>


要获取没有任何路径的列表,请更改工作目录并且NLST不带任何参数执行:

CWD OUT
NLST

相关内容