by
Anonymous Coward
on 2014年11月17日 11時58分
(#2712246)
そもそもが LIST コマンド自体が
| Since the information on a file may vary widely from system | to system, this information may be hard to use automatically | in a program, but may be quite useful to a human user. (RFC959 [ietf.org])
もうそのままサービス終了でいいのでは? (スコア:1)
いまさらAnonymous FTPもないだろう。
Re: (スコア:1)
ファイルを確実にダウンロードするならFTPのほうがありがたいです。HTTPはダウンロードしようとしてもPHPやらJavascript経由でリダイレクトさせられたり、URLに切り替えてくれるならまだしも、ファイルがアタッチメントだったり、ダウンロードするたびにファイル名に謎の番号を付け加えて変化させたり、なんだかんだブラウザを強制的に使わせようとしたりしてくるんで、自動化しようと思っても簡単じゃないんです。FTPはたいていディレクトリも表示してくれるし、規格が古い分あまり小細工がないので、FTPが選べるならそっち優先にしています。
Re:もうそのままサービス終了でいいのでは? (スコア:1)
FTPのディレクトリ表示ってlsなんですよね。で、たまに生のlsのデータを渡してくるサーバがあって、そのためにftpクライアントはlsパーサを実装してるんだけど、そのlsがすごくマイナーなUnix系のlsだった場合は当然パースエラーになって……
ってことで、厳格に規格が定まっていないのがftpの恐ろしいところだと思います。
Re:もうそのままサービス終了でいいのでは? (スコア:1)
規格上NLSTコマンドにオプションを渡すことはできないのですが、実装が単なるlsであることを期待してオプションを渡すftpクライアントがあって、NLSTの引数のパースを厳格にするようバージョンアップしたらその手のクライアントでディレクトリ一覧が取れなくなった、なんて事例もありますね。
ls じゃないよ!(Re:もうそのままサービス終了でいいのでは?) (スコア:1)
そもそもが LIST コマンド自体が
| Since the information on a file may vary widely from system
| to system, this information may be hard to use automatically
| in a program, but may be quite useful to a human user.
(RFC959 [ietf.org])
「(LIST コマンドで返される) ファイル情報はシステムによって大きくばらつくので
プログラムに自動処理させるのは難しいけど人間が使うには便利だよ」と
定義されてるものですからね。
伝統的に古き良き ls -la の出力を模した出力を行うものが多く
中には当該システムの ls -la の出力をそのまま返すものもいますが
なんの保証もされていないわけです。
Windows の DIR の出力を返したって仕様上は誤りではない。
(当然文字コードなどの縛りには従う必要があります)
これでも CUI で利用する分にはなんの問題もありませんが、
GUI 化するにあたって may be hard to use automatically in a program と
わざわざ書いてくれているのに安易な実装をすると、ご指摘のような事態に陥る、と。
Re: (スコア:0)
安易も何も、じゃあ機械可読なリストを取るにはどうしたらいいのよ、って言ったらはるか後の時代のMLST/MLSDを待つしかなかったという規格の欠陥の尻拭いでバッドノウハウを強いられていた実装に対してその言い草はあまりにひどい。