ほとんどのシステム管理者やLinuxユーザーでさえ、ファイルの編集や削除、ユーザーの作成と削除、IPアドレスの検索などの日常的なタスクにはコマンドラインを好みます。ファイルのダウンロードは通常毎日実行されるルーチンタスクであり、ZIP、TAR、ISO、PNGなどのファイルタイプを含めることができます。コマンドラインターミナルを使用して、このタスクを簡単かつ迅速に実行できます。
この理由の1つは、コマンドラインが高速で、使用するリソースが少ないためです。ユーザーが頻繁に行うもう1つのことは、ファイルをダウンロードすることです。また、コマンドラインを使用して簡単かつ迅速に実行できます。 Wgetとcurlは、コマンドラインからファイルをダウンロードできるコマンドラインユーティリティです。
ここLinuxAPTでは、サーバー管理サービスの一環として、お客様が関連するUbuntuシステムクエリを実行するのを定期的に支援しています。
このコンテキストでは、wgetおよびcurlユーティリティを使用してコマンドラインからUbuntuにファイルをダウンロードする方法を調べます。
ただし、同じコマンドは、Debian、Gentoo、CentOSなどの他のLinuxディストリビューションでも機能します。
Wgetを使用してファイルをダウンロードする方法は?
Wgetは、Webからファイルをダウンロードするために使用されるコマンドラインツールです。 wgetを使用すると、単一のHTMLファイルまたはWebサイト全体をダウンロードできます。 HTTP、HTTPS、およびFTPプロトコルを使用したファイルのダウンロードをサポートします。ほとんどすべてのLinuxOSにインストールされています。ただし、システムで見つからない場合、または誤って削除された場合は、次のようにインストールできます。
$ sudo apt install wget
wgetコマンドの基本的な構文は次のとおりです。
$ wget [option]… [URL]…
コマンドラインからファイルをダウンロードする方法は?
コマンドラインからファイルをダウンロードするには、wgetに続けて、ダウンロードするファイルのURLを入力するだけです。ネットワークトラフィックモニターパッケージ「vnstat-2.6.tar.gz」をWebサイトからダウンロードすると、コマンドは次のようになります。
$ wget https://humdi.net/vnstat/vnstat-2.6.tar.gz
Wgetがファイルのダウンロードを開始し、進行状況が表示されます。ファイルはターミナルの現在のディレクトリに保存されます。
部分的にダウンロードされたファイルを再開する方法は?
何らかの理由でダウンロードが停止した場合、またはCtrl + Cを押して手動でダウンロードを停止した場合は、wgetコマンドの-cオプションを使用してダウンロードを再開できます。このオプションを使用すると、部分的にダウンロードしたファイルを中断したところから続行できます。
$ wget -c <URL>
詳細出力をオフにする方法は?
デフォルトでは、wgetはダウンロードプロセスのすべての詳細を示す詳細な出力を表示します。必要に応じて、wget-nvオプションを使用してこの出力を制限できます。
$wget -nv <URL>
このオプションは、ダウンロードプロセスの基本情報のみを表示します。
詳細出力を完全にオフにするには、-qオプションを使用します。
$ wget -q <URL>
複数のファイルをダウンロードする方法は?
複数のファイルをダウンロードするには、wgetに続けてすべてのファイルのURLを入力します。
$ wget <URL1> <URL2>
wgetコマンドは両方のファイルをダウンロードし、現在のターミナルディレクトリに保存します。
複数のファイルをダウンロードする別の方法は、wget-iオプションを使用することです。多数のファイルをダウンロードする必要があるとします。
必要なのは、テキストファイルを作成し、このファイル内のすべてのURLを一覧表示することです(1行に1つのURL)。次に、wgetに続けて-iオプションを入力し、URLのリストを含むファイル名を入力します。
$ wget -i <filename>
注:ここでは、-nvオプションを使用して冗長出力をオフにしました。
Curlを使用してファイルをダウンロードする方法は?
Curlは、サーバーとの間でファイルをダウンロードおよびアップロードするために使用されるコマンドラインツールです。 FTP、HTTP、HTTPS、TFTP、IMAP、LDAPなどを含む20を超えるプロトコルをサポートします
Curlは、ほぼすべてのLinuxOSにインストールされています。ただし、システムで見つからない場合、または誤って削除された場合は、次のようにインストールできます。
$ sudo apt install curl
curlコマンドの基本的な構文は次のとおりです。
$ curl [option]… [URL]…
基本的なcurlコマンドの使用法
curlコマンドの基本的な使用法は、単一のファイルまたはWebページのコンテンツをダウンロードすることです。たとえば、ウェブページ「index.html」をダウンロードするには、curlの後にウェブページのURLを入力します。
$ curl <URL>
このコマンドは、指定されたファイルを現在のディレクトリにダウンロードします。
上記のcurlコマンドを実行すると、画面にHTMLコンテンツが表示されます。
ページのコンテンツをファイルに保存する方法は?
ページのコンテンツを画面に表示する代わりに、ダウンロードしてファイルに保存することができます。ファイルをシステムに保存するには、curlコマンドの-Oまたは-oオプションを使用します。 -Oオプションは、ファイルをリモートロケーションのファイルと同じ名前で保存します。 -oオプションを使用すると、ファイルを別の名前で保存できます。
-Oオプション
-Oオプションを使用すると、ファイル名を指定する必要はありません。リモートの場所にあるファイルの名前でファイルをシステムに保存します:
$ curl -O <URL>
たとえば、次のコマンドは「index.html」という名前でファイルを保存します。
$ curl -O https://www.cisco.com/c/en/us/support/switches/index.html
-oオプション
-oオプションを使用すると、選択したファイル名を指定できます。
$ curl -o filename <URL>
たとえば、次のコマンドは「switches.html」という名前でファイルを保存します。
$ curl -o switches.html https://www.cisco.com/c/en/us/support/switches/index.html
静かにカールを実行する方法は?
カールのダウンロードプロセス中にプログレスバーやエラーメッセージを表示したくない場合は、次のように-sオプションを使用してサイレントにすることができます。
$ curl -s <URL>
複数のファイルをダウンロードする方法は?
複数のファイルをダウンロードするには、curlに続けてすべてのファイルのURLを入力します。
$ curl -O [URL1] -O [URL2] -O [URL3]….
このコマンドは、すべてのファイルを現在のターミナルディレクトリに保存します。
ダウンロードする必要のあるURLが多すぎる場合は、テキストファイルを作成し、その中にURLをリストします。
次に、ファイルにリストされているすべてのURLをダウンロードするには、次のコマンドを使用します。
$ xargs -n 1 curl -O < filename
次に、lsコマンドを使用して、すべてのファイルがダウンロードされたかどうかを確認できます。
部分的にダウンロードされたファイルを再開する方法は?
何らかの理由でダウンロードが停止した場合、またはCtrl + Cを押して手動でダウンロードを停止した場合は、curlコマンドの「-C–」オプションを使用してダウンロードを再開できます。このオプションを使用すると、部分的にダウンロードしたファイルを中断したところから続行できます。
$ curl -C - <URL>