bash - 检查变量是否包含一组 TLD 中的域名

标签 bash shell

我有一个包含 DNS 记录名称的变量名称。我想检查某些条件,例如它是否以 .com.es 结尾。

我现在正在用

name="test.com"

namecheck=`echo $name | grep -w  "^[A-Za-z]*..com"`

但它只检查 com 并忽略 也可以根据存储在数组中的一系列值来检查它,例如

domain=[ ".es" ".com" ".de"]

最佳答案

bash 实现:

name=test.com
domains=(es com de)
for dom in ${domains[@]}; do
    [[ $name == *.$dom ]] && echo $name && break
done

关于bash - 检查变量是否包含一组 TLD 中的域名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20284315/

相关文章:

bash - grep 从特定文本 block 中提取字符串

bash - 如何创建已打开多个窗口的 tmux session ?

bash - 在命令替换中使用变量

bash - curl 命令负载中字符串的脚本连接

python - 允许我的 python 脚本的 Makefile?

c - 通过 BASH 在 C 中指定命令行参数

json - 如何在 bash 中将 json 响应转换为 yaml

linux - 给出一个路径的挂载点

bash - 查看安装脚本是否在 mac 或 linux 机器上运行

bash - 如何获取分隔字符串中的字段数?