bash - 我如何在 shell 脚本中检查 IP 版本(4 或 6)

标签 bash shell

我想检查 IP 是版本 4 还是版本 6。 输入是字符串形式的 IP 地址。 示例:

IP version 4 --> 1.1.1.1
IP version 6 --> 12:1201::12:15

最佳答案

你可以检查字符串是否包含冒号:,那么它是一个IPv6地址,否则它是一个IPv4地址:

string='1.1.1.1';

if [[ $string =~ .*:.* ]]
then
  echo "IPv6"
else
  echo "IPv4"
fi

关于bash - 我如何在 shell 脚本中检查 IP 版本(4 或 6),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31457586/

相关文章:

BASH XDOTool 鼠标点击、重复和停止

c - 系统启动后只为 BASh 启用 LD_PRELOAD

bash - 尝试通过 bash 脚本显示不同的颜色

bash - 如何从 bash 中读取参数

linux - 在 shell 脚本中使用 makefile 变量而不运行 make

C#从上下文菜单Windows资源管理器中选定的文件/文件夹中检索文件/文件夹路径

python - 在 SSH/Paramiko 中使用不同的 shell 执行命令/脚本

linux - 如何将文件名从十进制转换为十六进制?

regex - 如何计算同一正则表达式的每个不同匹配项的出现次数

c++ - 执行不带前导 `./` 的 C++ 二进制文件