我是靠谱客的博主 坚定胡萝卜,这篇文章主要介绍shell 将数组作为参数传入另一个脚本,现在分享给大家,希望可以做个参考。

问题描述:

shell 调用另一个脚本传入数组作为参数时会将数组转化为字符串,因为数组之间是空格分开的,所以就造成参数的个数发生混乱。

解决方法:

把数组用双引号括起来。

举例:
在main.sh中调用 test.sh

#!/bin/bash
DATAS=(
	beijing
	shanghai
	shenzhen
)
echo "right way:"
bash test.sh 1 "${DATAS[*]}" 2
echo "wrong way:"
bash test.sh 1 ${DATAS[*]} 2

test.sh:

#!/bin/bash
echo ${1} ${2} ${3}

运行脚本main.sh后输出:

right way:
1 beijing shanghai shenzhen 2
wrong way:
1 beijing shanghai

最后

以上就是坚定胡萝卜最近收集整理的关于shell 将数组作为参数传入另一个脚本的全部内容,更多相关shell内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(124)

评论列表共有 0 条评论

立即
投稿
返回
顶部