私は少なくともWindowsとLinuxのFTPで動作するはずのFTPクライアントを書いています。でも先に進む前に、これらの質問に答えたいと思います。
ls -lt
コマンドを使用すると、ファイルはどの順序でリストされますか?ls -lt
コマンドを使用すると、ファイルはどの順序でリストされますか?注:WindowsおよびLinux FTPサーバーでコマンドを試しましたが、特定のロジック/形式を理解できませんでした。
ls
はクライアントコマンドです。クライアントがユーザーからls -lt
を取得したら、サーバーにLIST
コマンドを発行し、返されたデータを解析して時間で並べ替えるのはクライアントの責任です。 LIST
コマンドを使用したときにftpサーバーから返されるデータはls
の出力と似ていますが、サーバーごとに異なる場合があります。参照: http://cr.yp.to/ftp/list.html
FTP ls/dirコマンドの形式は、サーバーの実装によって異なります。 ftp内のls-ltコマンドの順序に依存する可能性はほとんどありません。サーバーの実装によっては、名前の順序を指定する場合と、時間の順序を指定する場合があります。
新しいFTPサーバーは、RFC 3659、特に MLSDおよびMLST コマンドを実装する必要があります。これらのコマンドの応答の形式(ファイルとディレクトリをマシンで解析可能な形式で一覧表示するために使用)はRFCによって厳密に定義されているため、基盤となるプラットフォーム/ OS間で同じである必要があります。
残念ながら、MLSD/MLSTコマンドは、応答の形式に対処しますが、リスト内のファイルの順序については保証しません。それはあなたのクライアントが処理する必要があるものです。