您的位置:首页 > 运维架构 > Shell

在Linux下用 shell 命令把命令行中的参数逆序显示出来(三种方法)

2016-12-23 19:56 399 查看
首先用
vim
命令打开一个文件
bd
(文件名字),然后在里面添加如下的代码:最后调用
“./bd 参数1 参数2 …”


方法一:单纯利用
for
结构实现

str="";
for arg
do str="$arg $str"
done
echo "$str"
~


运行截图:



方法二:利用
while
结构及其
break
命令实现

再用
while
结构实现逆序输出的时候 需要用到一个
eval
命令,不能直接将
cmd
初始化为 空字符串,然后最后用
echo
命令输出,这样是不对的,可以自己试着实现一下。

cnt=$#
cmd="echo"
while : # ":" 代表但是 “true”的意思
do
cmd="$cmd \$$cnt"
cnt=`expr $cnt - 1`
if test $cnt -eq 0
then
break
fi
done
eval "$cmd"


运行截图:



方法三:利用
while
结构及其
continue
命令实现

那就是如果碰到
cnt < 0
了直接就
exit()
了,一定注意的是在
Linux
b-shell
命令下,
exit
命令没有括号,直接就是
exit 0;


cnt=$#
cmd="echo"
while true
do
cmd="$cmd \$$cnt"
cnt=`expr $cnt - 1`
if( test $cnt -gt 0)
then continue
fi
eval $cmd
exit 0
done


运行截图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: