2012-03-16 6 views
0
echo $1 $2 $3 ' -> echo $1 $2 $3' 
args=("[email protected]") 
echo ${args[0]} ${args[1]} ${args[2]} ' -> args=("[email protected]"); echo ${args[0]} ${args[1]} ${args[2]}' 
echo [email protected] ' -> echo [email protected]' 
echo Number of arguments passed: $# ' -> echo Number of arguments passed: $#' 

に引数を渡すことはできませんこれは、出力Bash初心者です。 bashスクリプト

This is suppose to be the output

になると仮定される。しかし、私が代わりにこれを取得します。

Jasons-MacBook-Pro:bash jasonkim$ bash arguments.sh 
-> echo $1 $2 $3 
-> args=("[email protected]"); echo ${args[0]} ${args[1]} ${args[2]} 
-> echo [email protected] 
Number of arguments passed: 0 -> echo Number of arguments passed: $# 

答えて

3

問題は、あなたができない、それはあなたなかったことだということではありません。

bash arguments.sh Bash Scripting Tutorial 
0
#!/bin/bash 

for var in "[email protected]" 
do 
    echo "$var" 
done 

$ ./scr.sh ABC

出力:

a 
b 
c 
  • そして、はい、明らかにエラーはでスクリプトに任意のパラメータを渡すことはなかったですすべて...多分実行してみてください:bash arguments.sh arg1 arg2 arg3
+1

'' $ @ "'が 'for'のデフォルトターゲットです。 –

+0

良い点。私はそれを「読みやすい」方法で説明しようとしていました... ;-) –