目次
この記事の目的は、コマンド ラインを使用して FTP 上のファイルを指定したローカル フォルダーに直接ダウンロードする方法を説明することです。
この方法を使用する理由は、企業が実装する必要がある機能の 1 つで、FTP からファイルを読み取る必要があり、FTP ファイルの累計数が 82 w ファイルに達しており、読み取りに非常に時間がかかるためです。古いファイルはバックアップ ファイル用の専用サーバーに切り出す必要があり、バックアップされたファイルは圧縮する必要があります。
本来はFTPサーバーに直接接続して直接ファイルを切り出したいのですが、ファイル数が多すぎてフォルダに入れない、直接表示操作がタイムアウトするなどのトラブルが続きました。そこで、DOS コマンドラインを使用してドキュメントを取得することを検討しました。
今回使用するDOSコマンドを紹介します。
1. コマンドラインを開きます
[win + R → cmd を入力 → Enter]
2.FTPを入力します
[FTPと入力→Enter]、[ftp>]が表示されたらftp入力成功です
3.FTPに接続する
接続する FTP アドレスが 130.147.192.xx、アカウントが ftpuserxxx、パスワードが userxxxx であるとします。
【130.147.192.xxを開く】
ここではデフォルトのポート 21 が使用されています。ポート 110 など他のポートを使用する場合は、[open 130.147.192.xx 110] と入力してください。
4. ユーザー名とパスワードを入力します
[ユーザー名 → Enter → パスワード → Enter]、[ユーザーはログインしています。続行] は成功を意味します
5. FTP ファイルのディレクトリを表示します。
[dir → Enter] とすると、このディレクトリ下に HIS のフォルダが 1 つだけあることがわかります。
6. [HIS]フォルダーに入る
[cd his → Enter]
7. ローカルフォルダーを指定します
事前にFTPファイルのダウンロード先となるフォルダーを作成しておく必要があります。
【lcd:\FTPDownLoad → Enter】
8. インタラクティブモードに切り替える
対話モードがオフになると、今後 mget コマンドを使用するときにプロンプトが表示されなくなります。
【プロンプト→入力】
9. ファイルをダウンロードする
[mget *.* → Enter キーを押す]、FTP サーバー上の HIS ディレクトリ下のファイルをローカルの [d:\FTPDownLoad] にダウンロードします。
*.* ワイルドカード。txt ファイルが必要な場合は、*.txt に変更してください。
入力後、ファイルディレクトリを取得しますが、ファイル数が多い場合は、ここに長時間滞留します。
10. ダウンロード時にプロンプトが表示されます
この時点で、ローカルの [d:\FTPDownLoad] フォルダーを確認すると、一部がダウンロードされていることがわかります。ダウンロードが完了するまで待ちます。
11. 時間のかかる計算
ファイルは 82w あり、各ファイルには約数十ミリ秒かかり、すべてをダウンロードするにはまだ数時間かかります。
【820000 * 20 ミリ秒 / 1000 ミリ秒 / 60 / 60 = 4.5556 H】
1秒 = 1000ミリ秒
1分 = 60秒
1 時間 = 60 分