在 bash 变量的开头、结尾和逗号周围添加双引号

MAB*_*978 2 bash sed

我有一个 shell 脚本,它接受以逗号分隔的参数,

-s 1234,1244,1567
Run Code Online (Sandbox Code Playgroud)

它被传递到curl PUT json 字段。Json 需要某种格式的值"1234","1244","1567"

目前,我正在传递带有引号的参数: -s "\"1234\",\"1244\",\"1567\"",这有效,但用户抱怨输入太多并且很难执行。因此,我只想采用逗号分隔的列表,就像我在顶部一样,并以编程方式将引号粘贴进去。

基本上,我想要一个参数作为 1234,2345 传入,并最终作为一个变量,即"1234","2345"

我读到这里最简单的方法是使用 sed,但我真的不熟悉它,而且我所有的努力都失败了。

anu*_*ava 5

您可以在 BASH 中执行此操作:

$> arg='1234,1244,1567'

$> echo "\"${arg//,/\",\"}\""
"1234","1244","1567"
Run Code Online (Sandbox Code Playgroud)