如何将带有包含空格的参数的参数向量放入 bash 变量中

如何将带有包含空格的参数的参数向量放入 bash 变量中

如何在bash变量中存储带有包含空格的参数的参数向量?

例如,我想2.sh打印b c

1.sh

#!/bin/bash

ARGV='a "b c"'
./2.sh $ARGV

2.sh

#!/bin/bash

echo $2

答案1

您应该使用数组而不是字符串:

args=("a" "b c")
./2.sh "${args[@]}"

当数组扩展被引用时,数组的每个元素都会被正确扩展。

相关内容