写一个shell脚本:判断指定网卡有无IP
时间: 2023-07-07 12:34:30 浏览: 136
好的,以下是判断指定网卡是否有IP地址的shell脚本:
```
#!/bin/bash
# 输入需要判断的网卡名称
echo "请输入需要判断的网卡名称:"
read nic_name
# 获取网卡IP地址
ip_addr=`ifconfig $nic_name | grep 'inet addr' | awk '{print $2}' | awk -F ':' '{print $2}'`
# 判断是否有IP地址
if [ -n "$ip_addr" ]; then
echo "$nic_name 网卡有IP地址:$ip_addr"
else
echo "$nic_name 网卡没有IP地址"
fi
```
使用方法:将以上脚本保存为一个文件,例如`check_ip.sh`,然后在终端中运行`bash check_ip.sh`,按照提示输入需要判断的网卡名称即可。
相关问题
写一个配置5张网卡ip的shell脚本
以下是一个简单的 Shell 脚本,用于配置 5 张网卡的 IP 地址:
```bash
#!/bin/bash
# 网卡名数组
NIC_NAMES=("eth0" "eth1" "eth2" "eth3" "eth4")
# IP 地址数组
IP_ADDRS=("192.168.1.1" "192.168.1.2" "192.168.1.3" "192.168.1.4" "192.168.1.5")
# 掩码数组
NETMASKS=("255.255.255.0" "255.255.255.0" "255.255.255.0" "255.255.255.0" "255.255.255.0")
# 配置 IP 地址和掩码
for (( i=0; i<${#NIC_NAMES[@]}; i++ )); do
ip addr add ${IP_ADDRS[$i]}/24 dev ${NIC_NAMES[$i]}
done
# 设置默认路由
route add default gw 192.168.1.254
# 配置 DNS
echo "nameserver 8.8.8.8" > /etc/resolv.conf
```
在脚本中,我们定义了 3 个数组:
- `NIC_NAMES`,包含要配置的网卡名;
- `IP_ADDRS`,包含要分配给每个网卡的 IP 地址;
- `NETMASKS`,包含每个网卡的掩码。
然后,我们使用一个循环来为每个网卡分配 IP 地址和掩码。最后,我们设置默认路由和 DNS 服务器。
注意:在实际使用中,您需要根据自己的网络环境和需求进行相应的修改。
写一个shell脚本用来判断系统版本
你好,我可以回答这个问题。以下是一个用于判断系统版本的shell脚本:
```
#!/bin/bash
if [[ -e /etc/os-release ]]; then
. /etc/os-release
echo "System Version: $PRETTY_NAME"
else
echo "Unknown System Version"
fi
```
这个脚本会检查系统中是否存在`/etc/os-release`文件,如果存在,则读取该文件中的系统版本信息并输出;如果不存在,则输出"Unknown System Version"。希望能对你有所帮助。