【发布时间】:2018-04-11 11:38:01
【问题描述】:
以下脚本:
#!/bin/bash
nested_func() {
echo $1
echo $2
}
func() {
echo $1
nested_func $2
}
func 1 "2 '3.1 3.2'"
输出:
1
2
'3.1
我想得到的输出是:
1
2
3.1 3.2
如何在func 上使用单个参数而不是多个参数来实现此输出?
进行编辑以解决简化问题
【问题讨论】:
-
请拨打
func 1 '2.1 2.2'。不要将两个参数作为一个字符串传递。这是一个有缺陷的要求。 -
谢谢,我刚刚更新了问题以解决无法简化的原因。
-
您提出了相互矛盾的要求,这可能意味着您必须手动重新堆叠并重新解析参数。重新思考您的设计。
标签: bash shell escaping parameter-passing parameter-expansion