【问题标题】:Bash Variables - Define Multiple Possible Expected ValuesBash 变量 - 定义多个可能的期​​望值
【发布时间】:2016-04-18 03:57:17
【问题描述】:

抱歉,如果之前已经回答过这个问题,但我在网上找不到太多内容。

这是我想要完成的:

if [[ "${hostname}" = (foo | bar)servername(01 | 02 | 03) ]]; then var="foobarfoo"
fi

这样,以下任何一项都将满足条件:fooservername01、barservername02、fooservername03、barservername03 等。

我以一种效率低得多的方式完成了这项工作:

if [[ ${hostname} == "fooservername01" ]] || [[ ${hostname} == "fooservername02" ]] || [[ ${hostname} == "fooservername03" ]] || [[ ${hostname} == "barservername01" ]] || [[ ${hostname} == "barservername02" ]] || [[ ${hostname} == "barservername03" ]]; then var="foobarfoo"
fi

但我希望优化/简化代码。

任何见解都将不胜感激,因为我对 bash 脚本甚至一般脚本仍然很陌生。

TIA

【问题讨论】:

标签: bash variables variable-substitution


【解决方案1】:

在这里的 Unix 社区中找到了解决方案,我也在这里发布了这个问题:

https://unix.stackexchange.com/q/255036/13792

如果 [[ "${host}" == @(euslc|eulvs)prdapp@(05|22|23) ]];那么

【讨论】:

    猜你喜欢
    • 2016-07-29
    • 2022-10-15
    • 2019-06-12
    • 2014-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多