【shell脚本学习】shift命令学习
2014-03-10 14:21
295 查看
位置参数可以用
非常有用的 Unix 命令:shift。我们知道,对于位置变量或命令行参数,其个数必须是确定的,或者当 Shell 程序不知道其个数时,可以把所有参数一起赋值给变量$*。若用户要求 Shell 在不知道位置变量个数的情况下,还能逐个的把参数一一处理,也就是在 $1 后为 $2,在 $2 后面为 $3 等。在 shift 命令执行前变量 $1 的值在 shift 命令执行后就不可用了。
测试命令如下:
输出结果如下:
shift命令左移。比如
shift 3表示原来的
$4现在变成
$1,原来的
$5现在变成
$2等等,原来的
$1、
$2、
$3丢弃,
$0不移动。不带参数的
shift命令相当于
shift 1。
非常有用的 Unix 命令:shift。我们知道,对于位置变量或命令行参数,其个数必须是确定的,或者当 Shell 程序不知道其个数时,可以把所有参数一起赋值给变量$*。若用户要求 Shell 在不知道位置变量个数的情况下,还能逐个的把参数一一处理,也就是在 $1 后为 $2,在 $2 后面为 $3 等。在 shift 命令执行前变量 $1 的值在 shift 命令执行后就不可用了。
测试命令如下:
root@wl-MS-7673:/home/wl/桌面/shell# cat -n test.sh 1 #shift 命令(x_shift.sh) 2 until [ $# -eq 0 ] 3 do 4 echo "第一个参数为: $1 参数个数为: $#" 5 shift 6 done root@wl-MS-7673:/home/wl/桌面/shell#
输出结果如下:
root@wl-MS-7673:/home/wl/桌面/shell# chmod u+x test.sh root@wl-MS-7673:/home/wl/桌面/shell# ./test.sh a b c d e f g 第一个参数为: a 参数个数为: 7 第一个参数为: b 参数个数为: 6 第一个参数为: c 参数个数为: 5 第一个参数为: d 参数个数为: 4 第一个参数为: e 参数个数为: 3 第一个参数为: f 参数个数为: 2 第一个参数为: g 参数个数为: 1 root@wl-MS-7673:/home/wl/桌面/shell#
相关文章推荐
- Linux学习笔记:bash特性之多命令执行,shell脚本
- Shell脚本学习之expect命令
- shell脚本命令学习(一)
- Shell脚本学习——[命令之乐]
- Linux系统命令及Shell脚本学习笔记三:文件管理
- 【Shell脚本学习21】Shell break和continue命令
- shell脚本学习-5(sed命令学习)
- Linux-Shell脚本编程-学习-6-Shell编程-使用结构化命令-文件比较-case编程
- 【Shell脚本学习1】Shell简介:什么是Shell,Shell命令的两种执行方式
- 【Shell脚本学习9】Shell替换:Shell变量替换,命令替换,转义字符
- shell脚本学习笔记之grep命令用法
- shell脚本学习-6(sed命令学习)
- Linux系统命令及Shell脚本学习笔记二:用户管理
- shell脚本学习笔记(四) —— expr、basename、shift
- 【Shell脚本学习9】Shell替换:Shell变量替换,命令替换,转义字符
- shell脚本学习笔记之文本处理命令
- shell脚本学习-7(sed命令学习)
- Linux命令-学习shell脚本之前的基础知识
- Shell脚本学习之expect命令
- 【Shell脚本学习14】Shell echo命令