サイト管理人Blog

cloudfreeで「さぁ始めましょう♪」

FTPでファイル更新日時を年月日時分秒で取得する

2023-12-13 記載
概要 : ls -l やdirだと年と秒が欠けるので更新日時をyyyy/dd/dd hh:mm:ss形式で取得します
関連記事:WordPressローカル環境を1Clickで更新(5/5)
Keyword : FTP, MDTM, quote, dir, ls, 応答コード,

cloudfreeサーバでftp接続し、dirコマンド(ls -l と同じ)を取得すると、例えばこういう情報が返されます。(一部省略)

drwx--x--x  14 cfsid@cfsid.jp 1000 4096 Dec  9 23:55 .
drwx--x--x  10 cfsid@cfsid.jp 1000  171 Oct 24 23:17 ..
-rw----r--   1 cfsid@cfsid.jp 1000  674 Oct 23 23:06 .htaccess
-rw----r--   1 cfsid@cfsid.jp 1000  358 Dec  7 08:18 index.html

年と秒数が省かれていますので、正確な更新日時比較を行うには、別のコマンドで取得する必要があります。

ftp>help

ftp> help
コマンドは省略することができます。コマンド:

!               delete          literal         prompt          send
?               debug           ls              put             status
append          dir             mdelete         pwd             trace
ascii           disconnect      mdir            quit            type
bell            get             mget            quote           user
binary          glob            mkdir           recv            verbose
bye             hash            mls             remotehelp
cd              help            mput            rename
close           lcd             open            rmdir

quoteで取得できることがわかりました。
quote MDTM index.html
213 20231206231831

“Dec 7 08:18” は2023/12/07 08:18:??
“20231206231831” は 2023/12/06 23:18:31 で
+9:00時差すると 2023/12/07/ 08:18:31 です。
dirの結果、FileZillaとも一致しました。

先頭3文字の”213″は応答コード。
一般的なFTPサーバーからの応答コードの一覧は以下。(by ChatGPT君)

100番台: 情報を示す

100: 全てのデータが正常に受信されるまで待機しています
110: リスナーが新しい接続を待機しています
120: サービスが準備中です
125: データ接続が開始されました
150: ファイルステータスが開始されました

200番台: 成功を示す

200: コマンドが成功しました
202: コマンドは処理されましたが、システムは応答を返しません
211: システム情報を表示します
212: 特定のシステム情報を表示します
213: ファイルの修正日時情報を表示します
214: ヘルプ情報を表示します
220: サービスが利用可能です
221: サービスが終了しました
226: ファイル転送が完了しました

300番台: 再度接続または情報の要求を示す

331: ユーザ名が必要です
332: パスワードが必要です
350: ファイルステータスの要求が成功しました

400番台: エラーを示す

421: サービスが利用できません、接続が終了します
425: 接続が閉じられました、データ接続が必要です
426: 接続が閉じられました、データ接続が終了しました
450: ファイルのアクセスが拒否されました
451: コマンドが中止されました
452: ディスク容量が足りません

500番台: エラーを示す

500: 構文エラーが発生しました
501: パラメータが不正です
502: コマンドが実装されていません
503: コマンドの実装が不正です
530: 認証が必要です
550: ファイルが利用できません
552: ディスク容量が足りません


投稿へのコメントは コチラ(掲示板) へお願いします。

サイト管理人Blog