我使用参数 -A AA/BB 运行脚本。要获得带有 AA 和 BB 的数组,我可以这样做。

INPUT_PARAM=(${AIRLINE_OPTION//-A / }) #get rid of the '-A ' in the begining
LIST=(${AIRLINES_PARAM//\// })         # split by '/'

我们可以在一行中实现吗?

提前致谢。

最佳答案

单程

IFS=/ read -r -a LIST <<< "${AIRLINE_OPTION//-A /}"

这会将参数替换 ${AIRLINE_OPTION//-A /} 的输出放入“here-string”并使用内置的 bash read 将其解析为数组。 / 的拆分是通过 IFS 命令将 / 的值设置为 read 来实现的。

关于bash - unix shell 替换字符串两次(在一行中),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19052347/

10-13 08:04