我想执行一个需要 3 个参数的 shell 脚本。
参数编号 2 包含一个带空格的字符串
我想将所有参数放在一个变量中,如下所示:
Linux:~# kk="\"111\" \"222 222\" \"333\""
Linux:~# echo $kk
"111" "222 222" "333"
现在如果我调用一个函数:
func() {
echo ---$1---
echo ---$2---
echo ---$3---
}
以这种方式使用 $kk 变量
func $kk
然后它会返回
Linux:~# func $kk
---"111"---
---"222---
---222"---
我期待得到这个结果
---111---
---222 222---
---333---
如何在不使用的情况下解决此问题eval
?
我知道eval
解决了这个问题,但我不想使用它(因为如果我执行多次这样的调用需要时间)。