*nixコマンドcurl
およびwget
ブラウザに頼らずにURLにアクセスするのに便利です。どちらのコマンドでも、curl
を使用して、ネットワークサーバーからデータを転送できます。 2つの中でより堅牢です。どちらかを使用して、さまざまなサーバーからのダウンロードを自動化できます。
カールコマンド
前述のように、curl
コマンドを使用すると、ネットワークサーバーからデータを転送できますが、ネットワークサーバーにデータを移動することもできます。 HTTPに加えて、HTTPS、FTP、POP3、SMTP、Telnetなどの他のプロトコルを使用できます。管理者は通常、curl
に依存しています ここで説明するように、DELETE、GET、POST、およびPUTメソッドを使用してAPIと対話します。
curl
の構文 一見するとかなり簡単です。次に例を示します:
$ curl http://www.example.com/help.txt
カールオプション
コマンド構文にさまざまなオプションを指定できます:
curl [options] [url]
curl
を作成するオプションです とても頑丈です。以下は、curl
で使用できるオプションの一部です。 とその使用例。
-a、-追加
ファイルをアップロードするときに、このオプションを使用すると、ターゲットファイルを上書きする代わりに、ターゲットファイルに追加できます(FTP、SFTP)。
$ curl --append file.txt ftp://ftp.example.com/file.txt
-connect-timeout
--connect-timeout
オプションは、curl
の最大時間を秒単位で設定します リモートサーバーへの接続を確立するために使用できます。このオプションは、接続がすぐに終了するのを防ぎ、コマンドが接続を試行する時間を最小限に抑えるのに便利です。
$ curl --connect-timeout 600 http://www.example.com/
-dns-servers
このオプションを使用すると、DNSサーバーを一覧表示できますcurl
システムデフォルトの代わりに使用する必要があります。このリストは、DNSの問題をトラブルシューティングする場合、または特定のネームサーバーに対してアドレスを解決する必要がある場合に便利です。
$ curl --dns-servers 8.8.8.8 http://www.example.com/
-http3
具体的には、http3プロトコルを使用してhttpsURLで提供されるホストとポートに接続するようにcurlに指示できます。 -http2 および--http1.1 同じように機能し、Webサーバーの検証に使用できます。
$ curl --http3 http://www.example.com:8080/
-出力
URLを介してリモートサーバーからファイルを取得する必要がある場合は、--output
ファイルをローカルに保存する簡単な方法です。
$ curl http://www.example.com/help.txt --output file.txt
-プログレスバー
このオプションは、--output
と組み合わせた場合のファイル転送の進行状況を表示します オプション。
$ curl --progress-bar http://www.example.com/help.txt --output file.txt
-sslv2
HTTPと同様に、接続するコマンドに特定のSSLオプションを使用するようにcurlに具体的に指示できます。この場合、バージョン2を指定しています。-ssl SSLを使用する必要があることを指定し、-sslv3 SSLバージョン3を指定します。注:sslv2とsslv3は、引き続き使用可能ですが、メンテナによってレガシーと見なされます。
$ curl --sslv2 https://www.example.com/
-verbose
--verbose
curl
のオプション URLの呼び出し中に何が起こっているかをデバッグおよび表示するのに役立ちます。
$ curl --verbose http://www.example.com
wgetコマンド
curl
とは異なり 、wget
コマンドは、リモートサーバーから情報を取得するためだけのものです。デフォルトでは、受信した情報は、提供されたURLと同じ名前で保存されます。
これが基本的なwget
の例です 構文:
$ wget http://www.example.com/help.txt
wgetオプション
curl
のように 、wget
にさまざまなオプションを提供できます コマンド構文:
wget [option] [url]
-dns-servers =ADDRESSES
wget
を利用するときに使用する1つ以上の特定のDNSサーバーを指定できます リモートサーバーにアクセスします。ただし、オプションアドレスとネームサーバーアドレスが=で結合されている場合は、構文が異なります。
$ wget --dns-servers=8.8.8.8 http://www.example.com
-O
wget
を使用するときに新しい名前でファイルを保存するには 、--output-document
を利用します オプション、またはもっと単純に-O
。
$ wget http://www.example.com/help.txt -O file.txt
-progress =type
wget
を使用 、タイプ(ドットまたはバー)を指定して、プログレスバーのASCIIビジュアルを決定できます。タイプが指定されていない場合、デフォルトでドットになります。
$ wget --progress=dot http://www.example.com
まとめ
curl
およびwget
コマンドをスクリプトに追加すると、RPMパッケージやその他のファイルを自動的にダウンロードするのに非常に便利です。この投稿では、これらのコマンドで実行できる最も一般的な機能の一部にのみ触れています。両方のcurl
で使用可能なオプションの完全なリストについては、関連するマニュアルページを確認してください。 およびwget
。
[システム管理者のスキルをテストしたいですか?今日、スキル評価を受けてください。 ]