如何取得传入shell脚本的第i个值?要求i循环到几就取第几个参数
20个回答
展开全部
for ((i=1;i<=$#;i++))
do
echo ${!i}
done
do
echo ${!i}
done
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
$1 代表第一个值,$5代表第五个值,你懂了吧。
echo $i 就是脚本第i个值。
echo $i 就是脚本第i个值。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
想了想,我暂时没有好的方法,#@ 是一个数组 但是我不会像平常数组那样取到它的第i个值,有好的答案也请@ 我一下
#!/bin/bash
#output parameter
_index=0
for i in "$@"
do
arr[_index]=$i
let _index++
done
read -p "Which one do you want to show?:" i
if [ $i -le 0 ] || [ $i -gt $# ]
then
echo "The value you entered is invalid."
exit -1
fi
let i--
echo ${arr[$i]}
#!/bin/bash
#output parameter
_index=0
for i in "$@"
do
arr[_index]=$i
let _index++
done
read -p "Which one do you want to show?:" i
if [ $i -le 0 ] || [ $i -gt $# ]
then
echo "The value you entered is invalid."
exit -1
fi
let i--
echo ${arr[$i]}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#!/bin/bash
for ((i=1;i<=$#;i++))
do
echo $i
done
for ((i=1;i<=$#;i++))
do
echo $i
done
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以通过for循环分割处理 $@
#!/bin/bash
i=1
for arg in "$@"
do
echo The $i argument is $arg.
i=$[i + 1]
done
也可以将引用变量 i 的语句用 eval 计算后输出
#!/bin/bash
for ((i=1; i<=$#; i++))
do
eval "echo The $i argument is \$$i"
done
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询