シェルスクリプトを使用して/etc/hostsのすべてのIPアドレスとホスト名を印刷したいと思います。

シェルスクリプトを使用して/etc/hostsのすべてのIPアドレスとホスト名を印刷したいと思います。

/etc/hostsシェルスクリプトを使用してIPアドレスとホスト名を印刷したい

/etc/hosts文書:

## #For example:
## #102.54.94.97     rhino.acme.com          # source server
## #38.25.63.10      x.acme.com              # x client host
## #localhost name resolution is handled within DNS itself.
##  #127.0.0.1       localhost
##  #::1             localhost
111.11.1.1  aaaa.aa.aa
111.11.1.1  aaaa.aa.aa
111.11.1.1  aaaa.aa.aa
111.11.1.1  aaaa.aa.aa

# #122.55.80.97     bbb.bb.bb
# #122.55.80.98     ccc.cc.cc

すべての行ではなく、有効なIPアドレスとホスト名を出力する必要があります。

111.11.1.1  aaaa.aa.aa
111.11.1.1  aaaa.aa.aa
111.11.1.1  aaaa.aa.aa
111.11.1.1  aaaa.aa.aa

すべての行ではありませんが、

ベストアンサー1

コメント化された空白行フォームを削除します/etc/hosts

sed -e 's/#.*//' -e 's/[[:blank:]]*$//' -e '/^$/d' /etc/hosts

sedこれは、次の順序で3つの式を使用します。

  1. #(付属)後ろのすべての項目を削除します#
  2. 行末のスペース(スペースまたはタブ)を削除します。
  3. 空白行を削除します。

サンプルファイルが与えられると、これは次のようになります。

111.11.1.1  aaaa.aa.aa
111.11.1.1  aaaa.aa.aa
111.11.1.1  aaaa.aa.aa
111.11.1.1  aaaa.aa.aa

これは明らかに努力しない確認する住所と名前を残してください。

おすすめ記事