Linux shell関数伝達パラメータのいくつかの方法
1282 ワード
最近shellにおけるfunctionの伝達変数のいくつかの方式をまとめた.
1.単一変数を渡す
2.配列変数を渡す
出力結果は次のとおりです.
The number of parameters is: 1 hello The number of parameters is: 2 hello world The number of parameters is: 3 1 2 3
The number of parameters is: 5 1 2 3 hello world The number of parameters is: 5 1 2 3 hello world
1 2 3 hello world 1 2 3 hello world
1.単一変数を渡す
2.配列変数を渡す
#!/bin/bash
#trying to pass an variable.
function func()
{
echo 'The number of parameters is: ${#}'
for line in '$@'
do
echo '$line'
done
}
function func2()
{
param1=('${!1}')
param2=('${!2}')
echo ${param1[*]}
echo ${param2[*]}
}
echo '****************************************************'
#1.pass simpl variable.
func 'hello'
func 'hello' 'world'
func 1 2 3
#2.pass array variable
echo '*****************************************************'
array=(1 2 3)
strarray
出力結果は次のとおりです.
The number of parameters is: 1 hello The number of parameters is: 2 hello world The number of parameters is: 3 1 2 3
The number of parameters is: 5 1 2 3 hello world The number of parameters is: 5 1 2 3 hello world
1 2 3 hello world 1 2 3 hello world