标签: arrays bash
给出以下字符串,由jsawk生成:
[123,456,789]
是否有一种惯用的方式将其转换为BASH中的数组?
答案 0 :(得分:3)
删除括号,然后使用IFS分隔逗号 使用read填充数组。
IFS
read
foo="[123,456,789]" IFS=, read -a list <<< "${foo:1:-1}"
这可以容纳任何以逗号分隔的字符串。
答案 1 :(得分:1)
您只需将标点符号转换为空格。
string='[123,456,789]' array=(${string//[^0-9]/ })