gpt4 book ai didi

bash - 有条件地省略 bash 中的命令行选项

转载 作者:行者123 更新时间:2023-11-29 09:18:07 24 4
gpt4 key购买 nike

我有一个很长的命令,我想在特定情况下修改它以包含或不包含选项。

例如

java -jar compiler.jar --externs "$externs"
--foo "another" --bar "more"

如果 $externs 为空,我希望完全省略 --externs "$externs"。有什么方法可以在 bash 中执行此操作而无需使用字符串构建整个命令?

最佳答案

这就是 ${key:+WORDS} 扩展的用途:

java ... ${externs:+--externs "$externs"}

为此目的使用数组也是一种常见的习语:

args=( )
if [[ $externs ]]; then
args+=( --externs "$externs" )
fi

java ... "${args[@]}"

关于bash - 有条件地省略 bash 中的命令行选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34144681/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com