FTP命令仅列出目录。 不可能?

我如何执行目录列表,但只显示目录?

我试过ls | grep'/'但它被拒绝了,错误: 用法:ls remote-directory local-file

这是因为FTP中的命令行与你通常的linux命令行不同,但我想知道在FTP命令中是否有相同的东西

提前致谢

FTP协议不直接支持这样的功能。 但是,它确实允许一些服务器用来接受诸如使用ls风格参数(例如,bdk所提到的LIST -d )的广义解释。

如果服务器没有这样宽泛的解释,您只需从列表中检索这些信息即可。 不幸的是,这个标准并没有提供固定的格式(虽然大多数服务器似乎都使用ls -l格式)。

使用ftp本身可能是一个问题,但是如果将输出管道输出到shell,那么问题就更少了。

  ftp -i myhost.com/yolo/ <<< "ls -1R all_files_list.txt" 

我们可以看到该文件中的每个列表都包含像“-rwxrwxrw”这样的文件权限签名。 一点点看,你会认为所有的目录开始与'D'

所以

 grep '^d' all_files_list.txt > only_directories_list.txt