BuddyPress bbPress
Shell 实测多种不同姿势给函数传参数组
-
Shell 实测多种不同姿势给函数传参数组
定义数组:
array_testarray_test=( "AB-200 10 20" "CD-168 16 88" )定义函数:
fun_testfunction fun_test() { echo "参数总览:" echo "$*" echo "-----" echo "参数个数:$#" echo "参数1:" echo "$1" echo "-----" echo "参数2:" echo "$2" echo "-----" echo "参数3:" echo "$3" echo "-----" }我想以一个参数(多行文本的形式)传参给
fun_test函数:AB-200 10 20 CD-168 16 88尝试了多种姿势,都没有实现
下面开始测试传参:fun_test ${array_test[*]} 参数总览: AB-200 10 20 CD-168 16 88 ----- 参数个数:6 参数1: AB-200 ----- 参数2: 10 ----- 参数3: 20 ----- fun_test "${array_test[*]}" 参数总览: AB-200 10 20 CD-168 16 88 ----- 参数个数:1 参数1: AB-200 10 20 CD-168 16 88 ----- 参数2: ----- 参数3: ----- fun_test ${array_test[@]} 参数总览: AB-200 10 20 CD-168 16 88 ----- 参数个数:6 参数1: AB-200 ----- 参数2: 10 ----- 参数3: 20 ----- fun_test "${array_test[@]}" 参数总览: AB-200 10 20 CD-168 16 88 ----- 参数个数:2 参数1: AB-200 10 20 ----- 参数2: CD-168 16 88 ----- 参数3: ----- fun_test "$(printf "%s\n" "${array_test[@]}")" 参数总览: AB-200 10 20 CD-168 16 88 ----- 参数个数:1 参数1: AB-200 10 20 CD-168 16 88 ----- 参数2: ----- 参数3: -----最后,肯定实现了:
fun_test "$(printf "%s\n" "${array_test[@]}")" 参数总览: AB-200 10 20 CD-168 16 88 ----- 参数个数:1 参数1: AB-200 10 20 CD-168 16 88 ----- 参数2: ----- 参数3: -----
回复 0
- 哎呀,回复话题必需登录。
