NnmnLog

Linuxコマンドについての雑多なメモ

作成: 2021-07-10
更新: 2021-07-10
タグ: Linux

Linuxコマンドを組み合わせて何かやった時、後で思い出せるとよいかなと思いメモしておこうと思います。

特定のインタフェースのIPアドレスを取ってくる

仮想マシンのゲストなど、起動時に動的にIPが変わる場合にIPアドレスだけ抜き出したかった。

$ ip address show eth0 | grep 'inet ' | awk '{print $2}' | awk -F '/' '{print $1}'
192.168.28.142

以下のようなaliasを~/.bashrcとかで定義しておくとよいかも。

$ alias eth0ip="ip address show eth0 | grep 'inet ' | awk '{print \$2}' | awk -F '/' '{print \$1}'"
$ eth0ip
192.168.28.142

何かしらの開発サーバーを起動するときに特定のインタフェースのIPを指定したいときに少し楽になるかも。

以下は、zolaの開発サーバーを起動するときに、eth0のIPがほしい場合。

$ zola serve -i $(eth0ip) -u $(eth0ip)
Building site...
`highlight_code` has been moved to a [markdown] section. Top level `highlight_code` and `highlight_theme` will stop working in 0.14.
-> Creating 24 pages (0 orphan), 3 sections, and processing 0 images
Done in 606ms.

Web server is available at http://192.168.28.142:1111

Listening for changes in /xxx/yyy/zzz{config.toml, content, sass, static, templates}
Press Ctrl+C to stop

Ethernetインタフェースを追加したときに、専用のaliasを新に追加してあげる必要があるけど、そんな頻繁に追加したりすることもないと思うので気にしない。