我从bash运行应用程序,就像这样
./app_name var1 var2 $var3
其中var3
是--ab, --cd
,其中b
和d
不包含空格。
现在我想将参数--ef
添加到$var3
,但是f
包含空格。 问题是我试图避免这一行的变化。
./app_name var1 var2 $var3
如果我这样离开它, app_name
将f
两个部分理解为两个不同的参数,因此无法parsing。
我可以以某种方式更改var3
,使其不会将f
分成两个不同的参数吗? 我试图把报价放在里面,逃避空间,但没有帮助。
你可以通过使var3
成为一个数组,例如:
var3=(--ab --cd --e "f1 f2") ./app_name var1 var2 "${var3[@]}"
这样f1 f2
将被视为一个参数。