Comando FTP "ls-lt": como é que lista os detalhes do ficheiro para o FTP Linux e o servidor FTP do Windows?

estou a escrever um cliente de FTP que deve trabalhar para, pelo menos, o Windows e o Linux FTPs. Mas antes de prosseguir, quero responder a estas perguntas.

  1. em que ordem os ficheiros são listados quando o comando FTP ls -lt é usado para o servidor de FTP no Linux ?
  2. Existe algum formato / lógica específico em que todos os servidores FTP do Linux fornecem a lista de ficheiros? por exemplo, DateTime stamp vai estar sempre lá e os arquivos são listados na ordem descendente da "data modified" ou algo assim.
  3. em que ordem os ficheiros são listados quando o comando FTP ls -lt é usado para o servidor de FTP no Windows ?
  4. existe algum formato / lógica específico em que todos os servidores FTP do Windows forneçam a lista de ficheiros?
  5. Pode indicar-me alguma documentação que ajude a compreender isto? Existe algum padrão definido para isso?

Nota: eu tentei o comando em servidores FTP do Windows e Linux, mas não consegui descobrir nenhum comando específico lógica / formato.

Author: Learner, 2012-07-19

3 answers

ls é um comando do cliente. Quando o seu cliente obtém ls -lt do utilizador, emite um comando {[[2]} para o servidor e cabe ao seu cliente analisar os dados devolvidos e ordená-los a tempo. Os dados devolvidos pelo servidor ftp quando você usa o comando LIST é semelhante à saída de ls, mas pode variar de servidor para servidor. Ver: http://cr.yp.to/ftp/list.html

 8
Author: Jon Lin, 2012-07-19 04:59:38

O formato dos comandos FTP ls / dir depende da implementação do servidor. É improvável que possa confiar na ordem de um comando ls-lt dentro do ftp. Algumas implementações do servidor podem dar-lhe ordem de nome, outras podem dar-lhe ordem de tempo.

 4
Author: teambob, 2012-07-19 04:51:06

Os servidores FTP mais recentes devem implementar o RFC 3659, particularmente os comandos MLSD e MLST. O formato da resposta para esses comandos -- usado para listar arquivos e diretórios, em um formato processável por máquina -- é estritamente definido pelo RFC, e assim deve ser o mesmo em todas as plataformas/OSes subjacentes.

Infelizmente, os comandos MLSD/MLST, ao abordarem o formato das respostas, não garantem a encomenda dos ficheiros dentro de um listagem; isso é algo que o seu cliente precisa de lidar.

 1
Author: Castaglia, 2016-01-18 02:29:33