Bri*_*kes 3 bash shell scripting awk
如果我有一个文本文件:
MachineName IPAddress
Computer1234 10.0.1.1
Computer1235 10.0.1.2
Computer1236 10.0.1.3
Run Code Online (Sandbox Code Playgroud)
从计算机上获取 MachineName 后,如何从上面的文本中获取相应的 IP 地址?
(bash?) 脚本将在 Mac 上运行,上面的文本可以重新格式化和/或插入脚本本身(大约 110 台计算机)...
这就是 awk 的用途:按模式搜索字段,然后执行一些操作。基本思想是
awk '/pattern/ {action}' file
Run Code Online (Sandbox Code Playgroud)
在你的情况下,这将是
awk '/Computer1234/ { print $2 }' file
Run Code Online (Sandbox Code Playgroud)
事实上,你可以更具体,使用一般的 awk 用例
awk 'condition { action }' file
Run Code Online (Sandbox Code Playgroud)
和
awk '$1 == "Computer1234" { print $2 }' file
Run Code Online (Sandbox Code Playgroud)
另一方面,将主机名转换为 IP 地址是名称服务器的作用。如果这不仅仅是玩弄并且需要扩展,您应该将该数据插入到名称服务器的区域文件中,然后使用名称服务访问工具dig来查询与主机名关联的地址。
| 归档时间: |
|
| 查看次数: |
3893 次 |
| 最近记录: |