无人扶我青云志,我自踏雪至山巅。|

谢墨尘

园龄:11个月粉丝:4关注:0

linux获取本机和目标机器的IP和主机名

linux获取本机和目标机器的IP和主机名

系统 配置 IP
Centos7.9 2c4g 192.168.8.182
Centos7.9 2c4g 192.168.8.182

效果

简洁版

优化版

简洁版

#!/bin/bash
#!!!!!!!!!!!!!!!!!!!!执行这个脚本时,目标端需要允许SSH连接
hostname=$(hostname)
ip_address=$(hostname -I | awk '{print $1}')
echo "本机主机名: $hostname"
echo "本机IP地址: $ip_address"
# 获取目标端的主机名和IP地址(假设目标端IP存储在变量target_ip中)
read -p "请输入目标端IP地址: " target_ip
target_hostname=$(ssh $target_ip "hostname")
# 获取目标端的第一个非回环IP地址
target_ip_address=$(ssh $target_ip "hostname -I | awk '{for(i=1;i<=NF;i++) if(\$i != \"127.0.0.1\") {print \$i; exit}}'")
echo "目标端主机名: $target_hostname"
echo "目标端IP地址: $target_ip_address"

简洁版和优化版区别是优化版添加了字体颜色和注释

优化版

#!/bin/bash  
# 该脚本用于获取本机及目标主机的主机名和IP地址。  
# 请注意,在运行此脚本时,目标主机需要允许SSH连接。  

# 获取本机的主机名并存储在变量hostname中  
hostname=$(hostname)  

# 获取本机的第一个IP地址并存储在变量ip_address中  
ip_address=$(hostname -I | awk '{print $1}')  

# 输出本机的主机名  
echo "本机主机名: $hostname"  

# 输出本机的IP地址  
echo "本机IP地址: $ip_address"  

# 提示用户输入目标主机的IP地址,并将输入存储在变量target_ip中  
read -p "请输入目标端IP地址: " target_ip  

# 使用SSH连接到目标主机,获取目标主机的主机名  
target_hostname=$(ssh $target_ip "hostname")  

# 使用SSH连接到目标主机,获取第一个非回环IP地址  
target_ip_address=$(ssh $target_ip "hostname -I | awk '{for(i=1;i<=NF;i++) if(\$i != \"127.0.0.1\") {print \$i; exit}}'")  

# 输出目标主机的主机名  
echo "目标端主机名: $target_hostname"  

# 输出目标主机的IP地址  
echo "目标端IP地址: $target_ip_address"

本文作者:谢墨尘

本文链接:https://www.cnblogs.com/xietingfeng321/p/18670676

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   谢墨尘  阅读(14)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起