"dig +short www.example.com"コマンドを入力すると、同様の結果が表示されます。
www.example.com.
192.168.1.1
192.168.1.2
192.168.1.3
最初の住所を取得して、私が望む住所であるかどうかをテストしたい(192.168.1.1)
シェルスクリプト、特に2行目を使用して、このコマンドの出力をどのように取得できますか?
ベストアンサー1
次の操作が実行されます。
$ dig +short www.google.com | head -1
74.125.225.113
ただし、複数のIPアドレスを持つほとんどのサーバーはDNSレベルで一種のラウンドロビンを実行するため、次のコマンドを実行するたびにリストが通常回転するので注意してくださいdig
。
$ dig +short www.google.com
74.125.225.116
74.125.225.112
74.125.225.113
74.125.225.114
74.125.225.115
$ dig +short www.google.com
74.125.225.115
74.125.225.116
74.125.225.112
74.125.225.113
74.125.225.114
$ dig +short www.google.com
74.125.225.114
74.125.225.115
74.125.225.116
74.125.225.112
74.125.225.113
クエリ間でIPがどのように移動するかを確認してください。これは、これらのサーバー間の負荷分散を行うために行われます。
IPを変数としてキャプチャ
次のコマンドは、IPアドレスの出力をキャプチャしてシェル変数に配置します。
$ IP=$(dig +short www.google.com | head -1)
以下で確認できます。
$ echo $IP
74.125.225.114